线程专有数据:如何存储和访问?

时间:2010-02-22 08:38:50

标签: c# .net multithreading

.NET中是否有可能将对象实例绑定到线程的当前执行上下文? 所以在代码的任何部分我都可以做CurrentThread.MyObjectData.DoOperation()这样的事情,并确保我访问特定于线程的数据? 谢谢!

2 个答案:

答案 0 :(得分:9)

您可以查看ThreadStaticAttribute。另一个有用的方法是SetData / GetData,它允许您存储与当前线程相关的数据。

答案 1 :(得分:6)

如果您使用的是.NET 4.0,那么现在还有ThreadLocal< T>:

System.Threading.ThreadLocal<T>

尼克