关于 ASP.NET Web 应用中 async/await 注意问题
System.NullReferenceException: Object reference not set to an instance of an object.
at System.Web.ThreadContext.AssociateWithCurrentThread(System.Boolean setImpersonationContext) at offset 20 at System.Web.HttpApplication.OnThreadEnterPrivate(System.Boolean setImpersonationContext) at offset 12 at System.Web.HttpApplication.System.Web.Util.ISyncContext.Enter() at offset 0 at System.Web.Util.SynchronizationHelper.SafeWrapCallback(System.Action action) at offset 24 at System.Threading.Tasks.Task.Execute() at offset 16
线程同步上下文
默认情况下,当未完成的 Task 时,会捕获当前线程上下文,在 Task 完成时使用该上下文恢复方法的执行。 当 async 方法内的 await 执行完成时,它会尝试获取调用者线程所在的上下文执行方法的剩余部分, 但是该上下文已含有一个线程,该线程在等待 async 方法完成。然后它们相互等待。
http://blog.stephencleary.com/2012/07/dont-block-on-async-code.html
https://blogs.msdn.microsoft.com/alazarev/2017/05/20/fun-with-configureawait-and-deadlocks-in-asp-net/
https://www.cnblogs.com/cmt/p/configure_await_false.html
https://blog.csdn.net/zhanglong_longlong/article/details/79712371
https://blog.csdn.net/WPwalter/article/details/79673214
最新文章
- MongoDB常用操作--集合1
- html javascript css3 php3.2.3离线手册
- linux命令初识
- [译]:Orchard入门——导航与菜单
- c程序辨别系统是64位 or 32位
- QQ音乐API
- 给指针malloc分配空间后就等于数组吗?
- wpf 大控件 打印 将控件转成 xps格式 并分页打印
- 浅谈C51内存优化
- CentOS 修改主机名
- JVM 调优参数解释
- C++实验四
- jsonp实现下拉搜索
- Java NIO 与 IO之间的区别
- 20155229《网络对抗技术》Exp5:MSF基础应用
- 计算机上面常用的计算单位 &; 个人计算机架构与接口设备
- 优化 Redis 的使用策略
- oracle修改用户密码
- Yii框架配置语言包
- CSS简单介绍及应用