繁体   English   中英

.NET如何设置以编程方式启动的进程的线程名称

[英].NET How to set thread name of a process that I programmatically start

我的VB.NET应用程序以编程方式启动了运行脚本的过程(Julia)。
我假设“ VS线程”窗口中显示的线程之一就是该进程的线程。
我想命名该线程,以便可以在“线程”框中找到它:

在此处输入图片说明

我使用以下代码开始该过程:

Dim Julia_RF_process As New ProcessStartInfo()
Julia_RF_process.WorkingDirectory = RF_PROCESS_FILEPATH
Julia_RF_process.FileName = "rundirect.exe"
Julia_RF_process.Arguments = RF_DETECT_PATHNAME
Process.Start( Julia_RF_process )

如何设置其线程名称,以便可以在Visual Studio>“线程”窗格中轻松识别它?

您可以在新线程中启动过程,并命名为:

Dim t = New Thread(Function()
                       Dim process = Process.Start("rundirect.exe")
                       process.WaitForExit()
                   End Function)
t.Name = "MyThtread"
t.Start()

Do other stuff...

t.Join()

当然,线程和进程是不同的东西。 .Net Process API使您可以启动和管理OS进程。 Thread API使您可以在自己的进程(例如,控制台应用程序)中创建和管理线程。 启动您的程序(最好首先使其成为一个简单的控制台应用程序),然后尝试查看使用诸如Process Explorer之类的东西创建的过程 ,顺便说一下,它是一个很好的工具。

希望能有所帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM