对于测试,使程序显示“无响应”的最简单方法是什么?中断 Windows 消息或将其置于无限循环中?
我试过一个简单的循环
while(true)
但这行不通。 测试应用程序是 C# 控制台应用程序。它在控制台中运行的事实是否使其“响应更快”?也许添加的控制台处理的某些部分使其始终响应?
更新:
将其更改为一个简单的 Winform 应用程序,将其置于无限循环中。工作就像一个魅力。感谢 Servy。
最佳答案
从 Windows 任务管理器的角度来看,控制台应用程序永远不会“无响应”。实际上,任务管理器并没有运行您的程序,它正在运行一个正在运行您的程序的 shell (cmd.exe),并且该 shell 被编写成即使您的程序没有响应,它也会始终响应。如果您不是通过 shell 运行您的程序而是直接启动它,那么该程序将不会有任何 UI,并且它不会是任务管理器中的“应用程序”(这意味着它不会出现在“应用程序”选项卡),它只是一个过程。
如果您只需要从任务管理器的角度模拟任何“不响应”的程序,您应该制作一个简单的 winforms 应用程序并将其置于无限循环中。如果有一些晦涩的方法可以使程序在控制台应用程序中显示为“无响应”,至少它会比任何标准桌面 GUI 类型都困难得多。
关于c# - 如何使控制台应用程序显示为 "Not Responding"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12565993/