亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C# 屏蔽由于崩潰彈出的windows異常彈框

 更新時(shí)間:2017年08月15日 16:20:02   作者:孤風(fēng)魅影  
這篇文章主要介紹了C# 屏蔽由于崩潰彈出的windows異常彈框,需要的朋友可以參考下

windows應(yīng)用程序(包括控制臺(tái))在運(yùn)行時(shí)如果出現(xiàn)了未處理的異常會(huì)出項(xiàng)windows的異常提示框 

     這個(gè)提示框在平時(shí)并沒(méi)有什么影響。但是當(dāng)我們使用啟動(dòng)的是一個(gè)服務(wù)器程序時(shí),我們的要求應(yīng)該是盡可能快的重啟應(yīng)用。

但是由于這個(gè)提示框?qū)е挛覀兊牡谌绞刈o(hù)程序并不知道應(yīng)用已經(jīng)崩潰退出,導(dǎo)致我們無(wú)法及時(shí)處理。     

     所以,我們應(yīng)該在程序啟動(dòng)時(shí)再做一個(gè)處理,即添加未處理異常的事件     

            C#:   AppDomain.CurrentDomain.UnhandledException

         解釋: 此事件提供通知未捕獲的異常。 它允許應(yīng)用程序來(lái)記錄有關(guān)異常的信息,系統(tǒng)默認(rèn)處理程序?qū)惓?bào)告給用戶和終止應(yīng)用程序之前。 如果提供了有關(guān)狀態(tài)的應(yīng)用程序的足夠信息,可以采取其他措施-例如保存更高版本的恢復(fù)的程序數(shù)據(jù)。 建議小心,因?yàn)椴惶幚懋惓r(shí),可能會(huì)損壞程序數(shù)據(jù)。          

          在該事件中我們可以從容的捕獲異常、記錄然后退出重啟。 

          示例代碼: 

class Program
    {
       static int m_count = 0;
       static void Main(string[] args)
       {
           AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
           while(true)
           {
              Func1();
              Thread.Sleep(10);
           }
       }
       private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
       {
           Console.WriteLine("有未經(jīng)處理的異常,程序即將退出!");
           Thread.Sleep(5000);
           Environment.Exit(-1);
       }
       static void Func1()
       {
           m_count++;
           if(m_count > 100)
           {
              throw new Exception();
           }
       }
    } 

         結(jié)果:         

總結(jié)

以上所述是小編給大家介紹的C# 屏蔽由于崩潰彈出的windows異常彈框,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

最新評(píng)論