【发布时间】:2013-06-21 18:33:37
【问题描述】:
这是一个两部分的问题:
-
谁能提供一个 ASP.NET/.NET 属性的列表,这些属性通常是与 ExecutionContext 一起流动的线程本地?
HttpContext.Current? Thread.CurrentContext? Thread.CurrentPrincipal? Thread.CurrentCulture?
我可以依靠哪些属性来生存/持久异步/等待?
还有什么?
-
有什么方法可以添加应用程序特定的上下文信息,这些信息会随着 ExecutionContext 自动流动?类似的东西
var ec = ExecutionContext.Capture(); ec.CustomContext["MyCustomContext"] = ACustomContext;
【问题讨论】:
-
你到底想做什么?为什么您觉得需要存储自定义上下文?
-
如果您有两个单独的问题,您应该问两个问题。
-
@ReedCopsey,我正在尝试重构一些利用 ThreadStatic 和其他线程本地存储机制的遗留代码,以便它可以很好地与 async/await 配合使用。
-
@JoeEnzminger,您可能想检查一下:referencesource.microsoft.com/#mscorlib/system/threading/…
标签: .net multithreading async-await