C# 是否可以捕获线程开始和结束事件?
我在C#和VB.Net中继承了一个相当大的visual studio WinForms项目 当我使用它时,我会在调试窗口中收到如下消息:C# 是否可以捕获线程开始和结束事件?,c#,vb.net,multithreading,winforms,visual-studio-2012,C#,Vb.net,Multithreading,Winforms,Visual Studio 2012,我在C#和VB.Net中继承了一个相当大的visual studio WinForms项目 当我使用它时,我会在调试窗口中收到如下消息: The thread '<No Name>' (0x1194) has exited with code 0 (0x0). The thread '<No Name>' (0x664) has exited with code 0 (0x0). The thread '<No Name>' (0x14b0) has exit
The thread '<No Name>' (0x1194) has exited with code 0 (0x0).
The thread '<No Name>' (0x664) has exited with code 0 (0x0).
The thread '<No Name>' (0x14b0) has exited with code 0 (0x0).
线程“”(0x1194)已退出,代码为0(0x0)。
线程“”(0x664)已退出,代码为0(0x0)。
线程“”(0x14b0)已退出,代码为0(0x0)。
为了更好地理解该软件,我很想研究这些线程是什么。在创建/终止新线程时,是否有任何工具或调试选项可以让我中断
注意:我在我能找到的所有“…=new Thread”和“…RunWorkerAsync()”代码上都设置了断点,但没有一个断点。我知道这不是您问题的确切答案,但下面是一些发布到另一个问题的相关信息:在Thread类中,有一个name属性可以设置。当您更改它时,输出中的“无名称”文本将替换为您在那里设置的文本。这将使您更容易看到正在发生的事情
Thread MyThread = new Thread(...);
MyThread.Name = "MyName"; //Can only be set once.
MyThread.Start(....);
是的,这看起来很像我要问的,但没有得到回答。任何时候只要使用
任务.Run
(或者它由返回任务的方法内部使用),如果线程池中没有活动线程,它也可能创建线程。谢谢Harry!不幸的是,我不知道是什么启动了线程,这是我试图解决的问题。我希望,如果我能捕获线程开始和停止事件,我也能找出是什么在创建它们。