CurrentThread/ProcessThread对象

Gur*_*epS 1 c#

在.NET BCL中,有一个CurrentThread和一个ProcessThread对象.这些有什么区别?

谢谢

Han*_*ant 14

当设计.NET 2.0时,它是SQL Server项目的宿醉.他们按了CLR队真的很难打破.NET Thread类和操作系统线程之间的联系.他们有理由当时,SQL Server支持"轻量级"线程,这些线程实现为光纤.光纤是Windows实现的"共同例程",大约15年前很流行.

该项目是一个半身像,他们无法让它足够可靠.遗憾的是,我们没有简单的方法将Thread映射到ProcessThread.相当亏损.也许有一天,有人会利用解耦,我还没有看到它完成.

你有可用现在唯一可能的映射是线程本身内部的P/Invoke GetCurrentThreadId().返回一个可以与ProcessThread.Id匹配的TID.