加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

Windows – 检查Win32线程是否正在运行或处于挂起状态

发布时间:2020-12-13 20:19:13 所属栏目:Windows 来源:网络整理
导读:如何查看Win32线程是正在运行还是处于挂起状态? 我找不到任何给出线程状态的Win32 API.那么如何获得线程状态? 我认为 – 原来 – 这个信息没有提供,因为提供这个信息的任何API会是误导和无用的. 考虑两种可能的情况 – 当前线程已暂停线程的兴趣.当前线程
如何查看Win32线程是正在运行还是处于挂起状态?

我找不到任何给出线程状态的Win32 API.那么如何获得线程状态?

我认为 – 原来 – 这个信息没有提供,因为提供这个信息的任何API会是误导和无用的.

考虑两种可能的情况 – 当前线程已暂停线程的兴趣.当前线程中的代码了解挂起的状态,并且应该能够共享它,以便内核团队不需要添加一个API.

第二种情况,系统中的一些其他/第三个线程已经暂停了兴趣线程(没有办法跟踪哪个线程).现在你有一个竞争条件 – 其他线程可以在任何时候 – 暂停线程的兴趣和从API收集的信息是无用的 – 你有一个值,表示线程被暂停,而事实上,而不是.

道德的故事 – 如果你想知道一个线程被暂停 – 挂起它:从SuspendThread的返回值是线程的以前的暂停计数.现在你知道一些有用的东西 – 线程暂停 – 这是有用的.或者它不是(但现在是)暂停.无论哪种方式,线程的状态现在都是确定性的,所以你可以在理论上做出一些基于这一点的智能选择 – 无论是ResumeThread还是暂停.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读