有没有办法让新生成的线程继承其父线程上线程静态状态(或类似的状态)的值?我想使用这个(或类似的)来实现“动态范围”的特殊变量,这些变量包含用于跟踪/日志记录等的操作/任务上下文信息。这是一种合理的方法吗,并且可以使它工作吗?
不能“继承”值。然而,新的 ThreadLocal<T> class 对于.NET 4,允许您提供 Func<T> 在 constructor ,它可以根据父级的状态初始化线程。这将提供一个合理的解决方案。
ThreadLocal<T>
Func<T>