如何能够查询到程序中某一个指定的线程的状态?

tom12345 2001-05-22 05:30:00
...全文
129 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jy 2001-05-23
  • 打赏
  • 举报
回复
线程不会阻塞另一个线程的。

调试运行你的程序,发生阻塞现象时,在IDE中强行暂停程序,然后,所有线程都会进入阻塞状态。
这时,调试命令(×)可以移动你的焦距到每个线程中去,就是说,你可以检查每个线程暂停在什么地方,代码行是什么。
配合你的代码功能进行分析,排除出那个真正在阻塞中的线程。
--
好,把你怀疑的对象的下一句语句做上断点,继续运行程序。
--
如果立即在断点停止了,你需要重新排除,过滤出正确的那个故障线程。

-------------------------------------
关于(×)
菜单debug|threads...对话框;
其中,Set Focus按钮用于使选中的线程被聚焦(成为当前活动的被调试线程),当这个对话框被关闭之后,IDE中显示的代码行正是那个线程的代码,也正是你调试暂停的暂停之处。

tom12345 2001-05-23
  • 打赏
  • 举报
回复
我的意思是:我的程序中的一个线程在执行的时候,常常被阻塞,但是由于工程中文件数目庞大,无法定位是什莫线程阻塞了这个线程,能否有工具来检查是那个线程阻塞,或实时察看系统中各个线程的状态,请不要告诉我用spy++!
huidao11 2001-05-22
  • 打赏
  • 举报
回复
如果是你自己的程序,你可以直接调用线程函数,具体是什么函数,可以在MSDN中线程篇找到
如果是别人的程序,你可以使用AttachInput函数,再调用线程函数
chief 2001-05-22
  • 打赏
  • 举报
回复
你想要什麼信息呢?

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧