这实际上是一个功能,而不是一个错误。在此之前,系统会因未保存的工作丢失而注销,并且对任何损坏视而不见。
如今,执行需要等待的冗长任务的应用程序通过 DBus 向 shell 注册自己;这些可以是视频编码、上传和同步 Ubuntu One 或 DropBox 任务等。
有时应用程序可能会崩溃,因此无法取消注册其挂起的任务,并且它们可能是也可能不是 firefox。
您可以使用任何 DBus 查看器(例如 d-feet)来研究关闭抑制器:
在会话总线上,org.gnome.SessionManager
接口将公开方法GetInhibitors()
,该方法返回例如['/org/gnome/SessionManager/Inhibitor2']
。该路径中的对象将允许您查询各种内容,例如GetAppId()
(例如Handbrake),GetReason()
(例如Encoding),GetToplevelXid()
(例如79691816L)。特别是最新的可能有用:您可以发出xwininfo -id 79691816
并验证窗口是否仍然存在,如果存在,其真实标题是什么。
Firefox 长期以来一直遭受严重的内存泄漏问题。在最近的几个版本(4、5 和 6)中,情况变得更糟。
我经常收到此“未响应”消息,通过反复试验得知它来自 Firefox。要查看计算机上是否是由 Firefox 造成的,请考虑尝试以下步骤:
当出现“无响应”对话框时,打开系统监视器。在进程列表中查找 firefox-bin 可执行文件,如果找到它,请查看等待通道标头是否显示“futex_wait_queue_me”:
如果您看到此条目,请打开终端并输入“killall firefox-bin”。该命令将终止该进程。
现在,重复您所做的任何创建“无响应”对话框的操作(例如,尝试重新启动或关闭计算机),看看一切是否正常。如果一切顺利并且您没有收到另一个“无响应”对话框,则可以推断这是 Firefox 内存泄漏造成的。