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

最佳答案

可以,但是还需要进行同步(因为Dictionary<,>并非线程安全的)。

备择方案:

  • ThreadStaticAttribute
  • ThreadLocal<T> (.NET 4)

  • 当然,使用字典而不是ThreadStaticAttibute的好处是您不必担心垃圾,甚至不必担心黑魔法。如果您使用的是.NET 4,则ThreadLocal<T>可能是您的最佳选择。

    关于c# - Thread.CurrentThread是否总是返回相同的实例吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5514244/

    10-10 18:26