程序如何解冻?

时间:2013-02-25 11:19:05

标签: windows freeze

通常,我的某个程序会停止运行并且无法响应。其中一个更臭名昭着的例子是Windows任务管理器:

enter image description here

当一个程序像这样冻结时,它通常只是像那样挂起而且我杀死了应用程序。但是,在某些情况下,应用程序解冻并恢复,就像没有发生任何事情一样。

这是如何工作的?

我认为当一个程序像这样被卡住时,除了死之外它什么也做不了,否则它就不会被困在第一位。这个问题的答案是可能依赖于编写应用程序的语言,在这种情况下可以随意使用Java或C作为参考。

1 个答案:

答案 0 :(得分:3)

如果程序正在运行需要很长时间的事情 (例如,进行繁重的计算,等待网络回复) 在UI线程本身,比UI线程卡住,不能再 执行消息抽取: UI Thread both running message pump AND executing code?

发生这种情况时,可能会显示“无响应”消息。 如果长期任务完成,则程序“解冻”。