C# 多线程异常处理
来源:互联网 发布:大牌眼镜知乎 编辑:程序博客网 时间:2024/06/02 16:24
问题1:子线程中的未处理异常会影响主线程的运行吗?
问题2:如何捕获子线程和主线程中所有的未处理异常?
示例代码:
class Program { static void Main(string[] args) { //AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException); new Thread(new ThreadStart(threadFun)).Start(); Thread.Sleep(500); //让子线程执行完毕 Console.WriteLine("主线程正常运行!!!"); Console.ReadLine(); } static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) { Console.WriteLine( e.ExceptionObject.ToString()); Console.ReadLine(); } public static void threadFun() { throw new Exception("子线程异常!!!"); } }
运行上述代码可以看到子线程抛出未处理的异常后,主线程是无法正常运行的。
打开异常处理代码,加入全局异常处理后,在CurrentDomain_UnhandledException中对子线程的异常进行了处理,
此时主线程可正常运行。
- C# 多线程异常处理
- c#中的多线程异常处理
- C#多线程中的异常处理
- C# 中多线程异常的处理
- 多线程-异常处理
- java 多线程异常处理
- 多线程异常处理
- Java多线程异常处理
- .NET 多线程异常处理
- 多线程的异常处理
- python多线程异常处理
- java 多线程 异常处理
- 多线程异常处理
- 异常处理与多线程
- C# 多线程异常捕捉。
- C# -- 异常和异常处理
- 关于C#异常处理!
- C#的异常处理
- myeclipse编译空间不足
- Struts2中的OGNL表达式
- python [httplib2处理http的get和post]
- Ubuntu Linux系统下apt-get命令详解
- 进一步学习WCF:数据契约,序列化等
- C# 多线程异常处理
- Linux ext3文件系统中通过debugfs恢复rm掉的文件
- Java使用for( : ) 为String[] 数组初始化注意事项
- 视频专辑:张孝祥 Java多线程与并发库高级应用
- android振动器(Vibrator)
- 瀑布式开发及与迭代式开发的区别
- ComboBox in DataGrid in WPF
- Matlab与VS混合编程总结
- 统计sql