Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#Winforms全局捕获线程异常并保持在线程上下文中_C#_.net_Multithreading_Winforms_Exception - Fatal编程技术网

C#Winforms全局捕获线程异常并保持在线程上下文中

C#Winforms全局捕获线程异常并保持在线程上下文中,c#,.net,multithreading,winforms,exception,C#,.net,Multithreading,Winforms,Exception,我希望捕获全局处理程序中的所有异常。 但是我的要求是保持在抛出异常的线程的上下文中! 不幸的是,所有全局处理程序,如Application.ThreadException或AppDomain.CurrentDomain.unhandledeexception都在主线程中运行。 但是我想在抛出异常的线程中捕获异常。 原因是我想读取用属性ThreadStatic声明的全局变量 这在C#Winforms中可能吗?为什么不在try/catch中简单地启动线程工作呢?我的意思是,try/catch应该是您

我希望捕获全局处理程序中的所有异常。 但是我的要求是保持在抛出异常的线程的上下文中! 不幸的是,所有全局处理程序,如
Application.ThreadException
AppDomain.CurrentDomain.unhandledeexception
都在主线程中运行。 但是我想在抛出异常的线程中捕获异常。 原因是我想读取用属性
ThreadStatic
声明的全局变量


这在C#Winforms中可能吗?

为什么不在
try/catch
中简单地启动线程工作呢?我的意思是,
try/catch
应该是您想要访问其
[ThreadStatic]
字段的任何线程运行的第一个代码。您最好尝试处理生成异常的线程上的异常,全局错误处理程序应该是最后一个选项是的,这是正确的。但是我处理的是几百万个遗留代码,这些代码是从一种完全没有异常处理的编码语言转换而来的。仅供参考,如果一行代码出现故障,运行时将继续执行下一行代码。现在代码被转换为C#,因此我需要一个基于全局线程上下文的异常处理,因为我没有选项在每个线程启动时进行一次try-catch