有特别懂线程的高手吗????请教你一个难题啊!!!

问题描述

当自己定义的线程出现异常,怎样通知给主线程,staticvoidApplication_ThreadException(objectsender,System.Threading.ThreadExceptionEventArgse){MessageBox.Show(DateTime.Now.ToString());}进入到这个方法进行统一的处理啊???????????????????

解决方案

解决方案二:
是的一般都是采用统一处理Application.ThreadExceptionAppDomain.CurrentDomain.UnhandledException
解决方案三:
在Run之前加上Application.ThreadException+=newThreadExceptionEventHandler(Application_ThreadException);
解决方案四:
privatevoidForm1_Load(objectsender,EventArgse){//thrownewException();LoadForm();#ifDEBUG//MessageBox.Show(DateTime.Now.Minute.ToString());#endif}privatevoidLoadForm(){//try//{//inti=Convert.ToInt32("asd");//}//catch(Exceptione)//{//thrownewException(e.Message);//}Threadtd=newThread(newThreadStart(start));td.Start();}privatevoidstart(){thrownewException();}staticvoidApplication_ThreadException(objectsender,System.Threading.ThreadExceptionEventArgse){MessageBox.Show(DateTime.Now.ToString());}不知道怎么进不来啊????????
解决方案五:
privatevoidForm1_Load(objectsender,EventArgse){//thrownewException();LoadForm();#ifDEBUG//MessageBox.Show(DateTime.Now.Minute.ToString());#endif}privatevoidLoadForm(){//try//{//inti=Convert.ToInt32("asd");//}//catch(Exceptione)//{//thrownewException(e.Message);//}Threadtd=newThread(newThreadStart(start));td.Start();}privatevoidstart(){thrownewException();}staticvoidApplication_ThreadException(objectsender,System.Threading.ThreadExceptionEventArgse){MessageBox.Show(DateTime.Now.ToString());}不知道怎么进不来啊????????
解决方案六:
在程序的Program类的Main方法里面添加如下代码#if!DEBUGApplication.ThreadException+=newThreadExceptionEventHandler(Application_ThreadException);#endif同时再添加两个方法处理异常信息!staticvoidApplication_ThreadException(objectsender,ThreadExceptionEventArgse){MessageBox.Show(e.Exception.Message,"系统错误",MessageBoxButtons.OK,MessageBoxIcon.Error);}staticvoidUnhandledExceptionFunction(Objectsender,UnhandledExceptionEventArgsargs){MessageBox.Show(((Exception)args.ExceptionObject).Message,"系统错误",MessageBoxButtons.OK,MessageBoxIcon.Error);}其它主要处理子线程错误的就只有这两行Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);AppDomain.CurrentDomain.UnhandledException+=newUnhandledExceptionEventHandler(UnhandledExceptionFunction);以及UnhandledExceptionFunction方法这样就可以捕捉到子线程的异常了

时间: 2024-12-23 09:26:22

有特别懂线程的高手吗????请教你一个难题啊!!!的相关文章

高手进来看,一个难题!!!大家帮帮忙

问题描述 我用C#创建了一个工程,工程是多窗体形式,其中包括设置参数的窗体四个.现在要求:为这四个设置参数的窗体设置相应的参数后,如果关闭整个工程,这些参数要保存到一个或多个结构里,当下次再启动这个工程,这些参数又必须从结构中读回来,即参数设置窗体的设置状态与整个工程关闭时的状态相同,同时可以重新设置参数,并对存放参数的结构及时进行更新.我该怎么做?

lambda-懂C#的高手看过来,一个概念问题不理解

问题描述 懂C#的高手看过来,一个概念问题不理解 什么是Lambda表达式,Lambda表达式在C#语言中的作用是什么,谢谢 解决方案 lambda表达式简单来说就是定义了一个函数,=>前面的是参数,后面的是返回值.所以你可以像函数一样使用它. 在C#中,linq就大量使用lambda表达式,所以要学好它. 解决方案二: C#的Lambda 表达式都使用 Lambda 运算符 =>,该运算符读为"goes to".语法如下: 形参列表=>函数体 函数体多于一条语句的可

mschart-MsChart高手看过来,有难题跪求帮忙

问题描述 MsChart高手看过来,有难题跪求帮忙 最近一个项目,要用MsChart做boxplot箱形图,也叫盒须图,微软例子只有一个图的例子,我现在要几个在一起的做法,而且是从数据绑定的.困了我两个多星期了,有没有大神能帮帮我.

c++-请教:一个完整的C++程序如何提供一个接口给其他软件使用

问题描述 请教:一个完整的C++程序如何提供一个接口给其他软件使用 如题.我用C++做了一个软件,现在想提供一个dll给另一个软件使用.要如何做?是直接在这个C++程序上做接口,还是另外建一个工程来生成dll? 请教大神们啦~谢谢 解决方案 要看另一个软件是需要如何和你的程序交互. 用到你程序的一部分,那么开放dll 只是传递数据的话,提供数据传递的标准,让它自己实现 希望整体嵌入你的程序,那么你实现一个OLE Server,让它用OLE Container嵌入你的程序. 如果那个程序不在本地,

请教大家一个在虚析构函数存在时,C++虚函数表的问题

问题描述 请教大家一个在虚析构函数存在时,C++虚函数表的问题 下面是在下的代码: #include <iostream> using namespace std; class Point { private: int X; int Y; public: Point() {} Point(int x, int y) : X(x), Y(y) {} const int getX() { return X; } const int getY() { return Y; } virtual ~Poi

请教大家一个问题 ,一个可用的azure账号,用vs的服务资源管理器登陆

问题描述 请教大家一个问题 ,一个可用的azure账号,用vs的服务资源管理器登陆 请教大家一个问题 ,一个可用的azure账号,用vs的服务资源管理器登陆,提示 找不到具有该点子邮件地址的账户 解决方案 你是没有subscription吧,中文叫订阅貌似. 解决方案二: Hi, 因为中国版Azure不是使用Microsoft Account(Live ID)来验证访问权限,如果是想通过VS去管理中国版的Azure的话,我建议你尝试这篇文章中的操作:http://www.cnblogs.com/

请教大家一个问题 如何查看azure vm是否已绑定DIP 谁知道啊,急急急

问题描述 请教大家一个问题 如何查看azure vm是否已绑定DIP 谁知道啊,急急急 请教大家一个问题 如何查看azure vm是否已绑定DIP 谁知道啊,急急急 解决方案 参考这篇文章 为 Azure虚拟机配置静态内部 IP 地址 (DIP) http://www.mamicode.com/info-detail-410735.html 解决方案二: Hi, 如果你是困惑是否已经为虚拟机执行了绑定DIP操作,你可以参考"PB人生"的回复去azure门户网站记录下虚拟机的内部IP,然

mfc求助-请教大家一个《深入浅出mfc》里关于CRuntimeClass的问题

问题描述 请教大家一个<深入浅出mfc>里关于CRuntimeClass的问题 enter code here #0001 #include ""my.h"" #0002#0003 extern CMyWinApp theApp;#0004#0005 static char szCObject[] = ""CObject"";#0006 struct CRuntimeClass CObject::classCObj

线程休眠java-一个线程类休眠1000毫秒和一个线程对象休眠1000毫秒有什么联系吗

问题描述 一个线程类休眠1000毫秒和一个线程对象休眠1000毫秒有什么联系吗 一个线程类休眠1000毫秒和一个线程对象休眠1000毫秒有什么联系吗 只有线程类及其子类对象才可以调用sleep方法吗 Thread.sleep(1000); Thread thread =new Thread ( ); thread.sleep(1000); 解决方案 本质上sleep是Thread类的静态方法,这两行代码是一样的含有,但是第二种thread.sleep的调用会报警告的:The static met