有没有一种(比较简单的)方法可以强制使Windows应用程序挂起,不回应?还是这完全取决于具体的应用程序/进程?
编辑:我想尝试的是:所涉及的应用程序有一个Web GUI和几个后台运行的进程。有一个报告说,当其中一个进程崩溃时,Web GUI停止回应。我想尝试重现这个问题,但我意识到这可能并不容易。
SuspendThread()
来使该线程停止运行。请注意,我的回答假设你想让另一个应用程序挂起。有很多方法可以让你自己的应用程序挂起(无论是故意还是非故意),但这里不再解释。这取决于您所说的“挂起”和“无响应”的含义。任何停止处理消息的GUI应用程序都将对用户而言变得无响应。
while (true) {}
一种简单的方法是将您想要挂起的应用程序的优先级设置为最低,然后在低优先级下无限循环运行您的应用程序。这将使其他应用程序饥饿。虽然不完美但简单易行。
如果您可以更改该进程的代码,只需在其中插入for(;;);
即可。如果您无法更改代码,则最简单的暂停进程的方法是使用“Process Explorer”。只需右键单击所需的进程,然后在菜单中选择“暂停”。