Thread.CurrentThread总是返回相同的实例吗?

Pom*_*oma 5 .net c# multithreading

我可以Dictionary<Thread, object>存储线程的数据并使用Thread.CurrentThread进行检索吗?

Jon*_*eet 10

你可以,但你也需要同步(因为Dictionary<,>不是线程安全的).

备择方案:

当然,使用字典的一个好处ThreadStaticAttibute是你不需要担心垃圾,或者确实是黑魔法.如果您使用的是.NET 4,ThreadLocal<T>则可能是您的最佳选择.