鉴于以下代码,
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位。
答案 0 :(得分:7)
你的程序中总是有很多线程在你自己没有直接启动。与.NET线程池中的线程,本机Windows线程池和RPC线程池一样,当池管理器修剪池时,您将看到它们退出。 Process类本身使用tp线程,例如,引发Exited事件的方式。
你不能命名它们,你没有启动它们,也没有办法获得对这样一个线程的引用。如果线程池线程is possible运行您的代码但是它是一个黑客,则命名它。
减少噪音的最简单方法是在调试时右键单击“输出”窗口并取消勾选“线程退出消息”。