使用“线程”窗口

“线程”窗口包含每行表示应用程序中一个线程的表。 默认情况下,该表列出应用程序中的所有线程,但您可以筛选列表以仅显示您感兴趣的线程。 每列都包含不同类型的信息。 您还可以隐藏某些列。 如果显示所有列,将从左到右显示以下信息:

标志列,您可以在此处标记要格外关注的线程。

活动线程列,此处黄色箭头指示一个活动线程。 箭头的轮廓指示执行在调试器中分解的线程。

“ID”列,包含每个线程的标识号。

“托管 ID”列,包含托管线程的托管标识号。

“类别”列,将线程划分为用户界面线程、远程过程调用处理程序或辅助线程。 一个特殊类别标识应用程序的主线程。

“名称”列,如果有线程,则按名称标识每个线程,否则标识为“<无名称>”。

“位置”列,显示线程运行的位置。 可以展开此位置以显示线程的完整调用堆栈。

“优先级别”列,包含系统已向每个线程分配的优先级。

“关联掩码”列,高级列,通常隐藏。 此列显示每个线程的处理器关联掩码。 在多处理器系统中,关联掩码确定线程可以在哪些处理器上运行。

“已挂起”列,包含挂起项计数。 此计数确定线程是否可以运行。

“进程名称”列,包含每个线程所属的进程。 在调试多个进程时,此列会很有用,但此列通常隐藏。

切换活动线程

任意执行以下步骤之一:

双击任一线程。

右击一个线程,再单击“切换到线程”。

黄色箭头会出现在新活动线程的旁边。 箭头的灰色轮廓标识执行在调试器中分解的线程

显示线程调用堆栈

在多线程程序中,每个线程都有自己的调用堆栈。 “线程”窗口提供了一种查看这些堆栈的简便方法。

查看线程的调用堆栈,在“位置”列中,单击线程位置旁边的倒三角形。 此位置将展开以显示线程的调用堆栈。

扩充阅读:
使用Visual Studio 2010调试并行程序
Visual Studio 2010对并行程序的调试提供了强大的手段,给程序设计好断点以后,可以使用Threads窗口查看当前程序的所有线程:
在图 19‑9中双击某行,可以让指定的线程成为当前“激活”的“被调试”的线程。
另外,Parallel Tasks窗口展示了当前程序所运行的所有任务:
在Parallel Stacks窗口中,则可以直观地看到每个线程的调用堆栈:
有关Visual Studio 2010调试器的使用方法,请查询MSDN。本书不再赘述。

另外,

扩充阅读:
使用Visual Studio 2010调试并行程序
Visual Studio 2010对并行程序的调试提供了强大的手段,给程序设计好断点以后,可以使用Threads窗口查看当前程序的所有线程:
在图 19‑9中双击某行,可以让指定的线程成为当前“激活”的“被调试”的线程。
另外,Parallel Tasks窗口展示了当前程序所运行的所有任务:
在Parallel Stacks窗口中,则可以直观地看到每个线程的调用堆栈:
有关Visual Studio 2010调试器的使用方法,请查询MSDN。本书不再赘述。

VS2010下多线程的调试(来自MSDN)相关推荐

  1. linux下多线程的调试

    多线程调试的基本命令(均在gdb命令行使用):    info threads ---- 显示当前可调试的全部线程.每个线程都有自己的线程ID,显示结果中前面有*的表示当前调试的线程.    eg: ...

  2. vs2010下release版本调试设置

    设置在Release模式下调试的方法: 1.工程项目上右键 -> 属性 2.c++ -> 常规 -〉调试信息格式 选 程序数据库(/Zi)或(/ZI), 注意:如果是库的话,只能(Zi) ...

  3. Linux下的程序调试——GDB

    无论是多么优秀的程序员,都难以保证自己在编写代码时不会出现任何错误,因此调试是软件开发过程中的一个必不可少的 组成部分.当程序完成编译之后,它很可能无法正常运行,或者会彻底崩溃,或者不能实现预期的功能 ...

  4. 调试多线程 查死锁的bug gcore命令 gdb对多线程的调试 gcore pstack 调试常用命令...

    gdb thread apply all bt 如果你发现有那么几个栈停在 pthread_wait 或者类似调用上,大致就可以得出结论:就是它们几个儿女情长,耽误了整个进程. 注意gdb的版本要高于 ...

  5. VS2010下的多线程窗口

    多线程的调试一直是一个令人蛋疼的问题,一般的解决方法是写Log.有的时候想要直观地看一下线程的运行状态,简直是困难.幸好vs2010给我们提供了一个多线程窗口. 使用方式: 1.按F5进入调试状态下 ...

  6. vs2010下使用dmp文件和pdb文件调试时dump、exe和pdb三个文件要保持版本一致的原因

    一.pdb文件简介 英文:Program Data Base,即程序的基本数据,是 VS 编译链接时生成的文件. pdb文件主要存储了如下调试信息: (1)public,private 和 stati ...

  7. OSG笔记一:在Win7、VS2010下配置OSG3.4

    在配置OSG初期找了很多相关的博文,内容都大同小异,且总与现在最新的版本有些出入,偏偏OSG这家伙编译一次的时间总是很长(有时候需要四.五个小时),失败了就很伤.在配置了不知道多少遍之后终于探索出了一 ...

  8. VS2010下配置OpenCV2.2

    VS2010下配置OpenCV2.2 1.       下载OpenCV2.2 安装 2.       我的安装路径是D:\Program Files\OpenCV2.2 3.       打开VS2 ...

  9. 【流媒體】jrtplib—VS2010 下RTP开源协议库JRTPLIB3.9.1编译

    [流媒體]jrtplib-VS2010下RTP开源协议库JRTPLIB3.9.1编译 SkySeraph Apr 7th 2012 Email:skyseraph00@163.com 一.JRTPLI ...

最新文章

  1. 扫描到U盘但找不到文件
  2. LeetCode: Max Points on a Line
  3. Spring - IOC常用标签
  4. soapui oracle groovy,soapUI+groovy 接口测试之部分groovy使用记录
  5. Whose Hall?
  6. 一步一步SharePoint 2007之二十五:编写一个最简单的WebPart(3)——添加WebPart
  7. postgresql 怎么读_大数据采集和抽取怎么做?这篇文章终于说明白了!
  8. lamp配置python_LAMP搭建笔记
  9. 今日头条架构演进之路——高压下的架构演进专题(含PPT)
  10. 计算机理论python字符串作业_[Python基础 ] Day_07_作业参考答案
  11. 最全的世界地图矢量素材下载(AI、EPS、SVG格式)
  12. matlab 矩阵的数组平方和,MATLAB中的矩阵和数组
  13. linux 是什么?
  14. Deep Learning Chapter02:Python基础语法回顾
  15. mysql 数据库1
  16. 升级鸿蒙系统数据备份,鸿蒙系统手机怎么回退到稳定版的EMUI 11.0系统?鸿蒙系统回退到EMUI系统详细教程...
  17. Linux怎样低格移动硬盘,移动硬盘低级格式化操作方法详细步骤【图文详解】
  18. 特斯拉新能源汽车遍地开花 汽车品牌纷纷建立电动化品牌战略
  19. 云南贵州地区市场知名的调查研究咨询公司
  20. ikea营销_用于企业的AI开发人员工具存在的问题(以及IKEA与之相关的问题)

热门文章

  1. 猫都能学会的Unity3D Shader入门指南(二)
  2. 基于最大最小距离的分类数目上限K确定的聚类方法
  3. Python学习入门基础教程(learning Python)--1.2.1 Python输出语句print基本使用 .
  4. lemur run PLSA
  5. PowerTip of the Day-Finding Invalid Aliases
  6. 卸载利器IObit Uninstaller Portable v9.4.0.20绿化版
  7. 面试官系统精讲Java源码及大厂真题 - 15 CopyOnWriteArrayList 源码解析和设计思路
  8. 一款不错的开源 Laravel 后台面板/CMS系统 —— LaraAdmin
  9. Java中的正则表达式 - Java Regex示例
  10. ZooKeeper 3.0.0发行说明