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

如何在Windows下暂停/恢复任何外部进程?

发布时间:2020-12-13 20:42:58 所属栏目:Windows 来源:网络整理
导读:我正在寻找不同的方法来通过Windows XP下的进程ID以编程方式暂停和恢复特定进程. Process suspend/resume tool使用SuspendThread / ResumeThread,但警告多线程程序和死锁问题. PsSuspend看起来没问题,但我想知道它是否对死锁做了什么特别的事情或使用其他方
我正在寻找不同的方法来通过Windows XP下的进程ID以编程方式暂停和恢复特定进程.

Process suspend/resume tool使用SuspendThread / ResumeThread,但警告多线程程序和死锁问题.

PsSuspend看起来没问题,但我想知道它是否对死锁做了什么特别的事情或使用其他方法?

首选语言:C / Python

如果您“调试调试器”(例如,使用logger.exe跟踪windbg.exe发出的所有API调用),则调试器似乎使用SuspendThread()/ ResumeThread()来挂起进程中的所有线程调试.

PsSuspend可能使用不同的方式暂停进程(我不确定),但仍然可以挂起其他进程:如果您要挂起的进程持有另一个进程需要的共享同步对象,则可能会阻塞从中取得任何进展的其他过程.如果两个程序都写得很好,那么当你恢复暂停的程序时它们应该恢复,但并非所有程序都写得很好.如果这导致正在执行挂起的程序挂起,那么就会出现死锁.

(编辑:李大同)

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

    推荐文章
      热点阅读