我正在编写一个插件,以便在您访问网站时自动突出显示文本字符串.这就像突出显示搜索结果,但自动和许多单词; 它可以用于过敏的人,使单词真正脱颖而出,例如,当他们浏览食物网站时.
但我有问题.当我尝试关闭一个空的,新鲜的FF窗口时,它会以某种方式阻止整个过程.当我终止进程时,所有窗口都消失了,但Firefox进程保持活动状态(父PID为1,不监听任何信号,打开大量资源,仍然占用CPU,但不会让步).
所以有两个问题:
如何一个进程不听kill -9(既不是用户也不是root用户)怎么可能?
除了重启之外,有什么我可以做的吗?
[编辑]这是违规的过程:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
digulla 16688 4.3 4.2 784476 345464 pts/14 D Mar28 75:02 /opt/firefox-3.0/firefox-bin
与...相同 ps -ef | grep firefox
UID PID PPID C STIME TTY TIME CMD
digulla 16688 1 4 Mar28 pts/14 01:15:02 /opt/firefox-3.0/firefox-bin
这是剩下的唯一过程.正如你所看到的,它不是一个僵尸,它正在运行!它不会听杀-9,无论我是用PID还是名字杀了!如果我尝试连接strace,那么strace也挂起并且不能被杀死.也没有输出.我的猜测是FF挂起了一些内核例程但是哪个?
[EDIT2]根据sigjuice的反馈:
ps axopid,comm,wchan
可以向您显示进程挂起的内核例程.就我而言,有问题的插件是Beagle Indexer(openSUSE 11.1).禁用插件后,FF又是一只快速而快乐的狐狸.