占位符,用于在c#线程上下文中存储临时值

时间:2010-09-08 20:28:41

标签: c# multithreading

我想在c#线程上下文或类似内容中存储一些信息(键值对)(就像http请求的httpcontext一样)。

我希望能够在线程上下文(或类似的东西)中的某处存储此信息(键值对),以便我的代码始终可以从当前运行的线程中读取这些值。

在我的appliation中,我有一系列API调用,并且无法将此信息从一个方法传递给其他方法(已经使用此选项!)

note - 此线程在Asp.Net应用程序中作为异步操作运行。

1 个答案:

答案 0 :(得分:4)

您是否正在使用Thread Local storage寻找ThreadStatic attribute

public static class ThreadLocalExample
{
    // There will be one Foo instance per thread.
    // Each thread will have to initialize it's own instance.
    [ThreadStatic]
    private static Foo bar;
}

当然,你可以在上面添加一些辅助方法或属性来帮助你管理实例,包括确保每个线程的初始化。