2015-11-12 45 views
4

我调试一个应用程序,使得使用asyncawait模式的工作大量使用TPL的,但是当我暂停应用并行堆栈窗口仅显示以下信息:为什么并行堆栈不显示任何任务?

没有任务显示。 LoadSymbolsenter image description here

我100%确定有多个任务正在运行,因为当我在并行运行的代码之一中设置断点时,会发生这种情况。

我读了其中的问题是,这个调试功能仅适用于Windows 8.1及以上工作了similar question,但我有:

  • 的Windows 10
  • 的Visual Studio社区2015年
  • 这是一个WPF应用程序

感谢

回答

3

基于的任务不会显示在Visual Studio任务调试功能中。另外,当异步IO正在进行时,没有线程忙于处理IO。这种组合意味着您无法找出目前正在运行的异步IO工作。

这是异步IO的主要缺点之一。您不能暂停调试器以查看发生了什么,也无法使用分析工具。

(回答自VS2015起有效,可能会改变)