TDe*_*nis 5 .net c# exception .net-4.0 task-parallel-library
根据一些文章和博客,如下所示的代码应该导致.NET 4中的异常
static void Main(string[] args)
{
Task.Factory.StartNew(() => { throw new Exception(); });
Thread.Sleep(1000);
GC.Collect();
GC.WaitForPendingFinalizers();
Console.WriteLine("Completed");
}
Run Code Online (Sandbox Code Playgroud)
预期例外:
未处理的异常:System.AggregateException:通过等待任务或访问其Exception属性未观察到任务的异常.结果,终结器线程重新抛出了未观察到的异常.---> System.InvalidOperationException:由于对象的当前状态,操作无效.
但它没有.我的PC上的.NET 4应用程序就像.NET 4.5一样:
<ThrowUnobservedTaskExceptions enabled ="true"/>
看起来.NET 4已被修补以获得与.NET 4.5相同的行为.它是真的还是我的配置有些麻烦?或者,如果安装了4.5,任何.NET4应用程序(不针对4.5)都会以这种方式运行?提前致谢.
我的猜测是你实际上在.NET 4.5上运行.请记住,.NET 4.5有效地安装在.NET 4的顶层.即使您的应用程序是针对.NET 4,如果用户安装了.NET 4.5,您将获得新的行为.
完全有可能用户真正只安装了.NET 4,但......
| 归档时间: |
|
| 查看次数: |
2185 次 |
| 最近记录: |