我可以从Process.GetCurrentProcess()获得运行线程的列表.线程,但我需要知道用Thread.Start启动的线程的托管名称.但它不是ProcessThread对象的属性.有没有办法从ProcessThread获取此信息?
虽然CLR为每个托管线程生成一个OS线程,但它并没有被强制使用.我的意思是,没有标准保证OS线程和托管线程之间应该存在一对一的映射.
引用MSDN:
操作系统ThreadId与托管线程没有固定的关系,因为非托管主机可以控制托管和非托管线程之间的关系.具体而言,复杂的主机可以使用CLR Hosting API针对同一操作系统线程调度许多托管线程,或者在不同操作系统线程之间移动托管线程.