线程'<no name =“”>'已退出 - 想给它一个名字</no>

时间:2013-10-18 13:51:52

标签: c# visual-studio-2010

鉴于以下代码,

Process Proc=null;
ProcessStartInfo DirectX=new ProcessStartInfo("dxsetup.exe", "/silent");
DirectX.WorkingDirectory="Tools\\directx";
Proc=Process.Start(DirectX);

在进程终止时,我在Visual Studio的输出窗口中得到The thread '<No Name>' (0x1eec) has exited with code 0 (0x0).

我想将文字"No Name"更改为描述性内容,但我在网上找到的只是Thread.Name,这似乎不适用于Process个对象。

有人能指出我正确的方向吗?

在Visual Studio 2010中使用C#.NET 4.0构建。在Windows 7上运行64位。

1 个答案:

答案 0 :(得分:7)

你的程序中总是有很多线程在你自己没有直接启动。与.NET线程池中的线程,本机Windows线程池和RPC线程池一样,当池管理器修剪池时,您将看到它们退出。 Process类本身使用tp线程,例如,引发Exited事件的方式。

你不能命名它们,你没有启动它们,也没有办法获得对这样一个线程的引用。如果线程池线程is possible运行您的代码但是它是一个黑客,则命名它。

减少噪音的最简单方法是在调试时右键单击“输出”窗口并取消勾选“线程退出消息”。