亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

.NET-實現“捕獲所有異常處理程序”的最佳方法是什么

.NET-實現“捕獲所有異常處理程序”的最佳方法是什么

C#
DIEA 2019-12-10 13:08:00
我想知道最好的方法是“如果所有其他方法都失敗了,那就趕上它”。我的意思是,您正在處理應用程序中盡可能多的異常,但是仍然有一定的錯誤,因此我需要擁有一些可以捕獲所有未處理的異常的東西,以便我可以收集信息并將其存儲在數據庫中或提交它們到網絡服務。AppDomain.CurrentDomain.UnhandledException事件是否捕獲所有內容?即使應用程序是多線程的?旁注:Windows Vista公開了本機API函數,該函數允許任何應用程序在崩潰后恢復自身...現在想不起來的名稱...,但我寧愿不使用它,因為我們的許多用戶仍在使用Windows XP。
查看完整描述

3 回答

?
汪汪一只貓

TA貢獻1898條經驗 獲得超8個贊

在主線程上,您具有以下選項:


控制臺或服務應用程序: AppDomain.CurrentDomain.UnhandledException

WinForms應用程序: Application.ThreadException

Web應用程序:Global.asax的 Application_Error

對于其他線程:


輔助線程沒有未處理的異常。使用SafeThread

工作者線程:(計時器,線程池)根本沒有安全網!

請記住,這些事件不會處理異常,它們只會向應用程序報告它們-通常在為時不晚對它們做任何有用的事情時


記錄異常很好,但是監視應用程序更好;-)



查看完整回答
反對 回復 2019-12-11
  • 3 回答
  • 0 關注
  • 259 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號