Nic*_*ico 4 asp.net threadstatic async-await asp.net-web-api requestscope
是否有可能在单个请求中使用线程静态变量?当前代码使用线程静态变量进行日志记录,现在我们希望使用异步控制器方法(使用async和await模式),这会导致问题,因为在打开新线程时该变量为null.
Ste*_*ary 10
await 可能导致线程跳转,因此线程静态变量自然会导致问题.
要解决此问题,您可以使用AsyncLocal<T>(在.NET 4.6中可用)或(如果必须)HttpContext.Current.Items.这两个的,我肯定会推荐AsyncLocal<T>过Items,如果这是您的平台上.
| 归档时间: |
|
| 查看次数: |
833 次 |
| 最近记录: |