FreeBSD控制nspluginwrapper多余进程的方法

FreeBSD控制nspluginwrapper多余进程的方法

问题

使用nspluginwrapper(/usr/ports/www/nspluginwrapper)在Firefox中播放Flash的同学可能会发现:关闭Flash页面后,有个名为“npviewer.bin”的进程仍然驻留,随着打开/关闭/切换Flash页面次数的增多,最后进程表里会有N个“npviewer.bin”进程,并且占据了大量内存,只能手动执行“killall npviewer.bin”。

解决方案

step1:

在你的用户目录下建立一个sh脚本,比如/home/yhs/bin/flashkiller。
脚本内容如下:

#!/bin/sh
flashcount=$(/bin/pgrep npviewer.bin | /usr/bin/wc -l)
if [ $flashcount = 1 ]
then
/usr/bin/killall npviewer.bin
fi

step2:

命令行下执行:

crontab -e

输入下列内容后,保存退出:

*/5 * * * * /home/yhs/bin/flashkiller > /dev/null #注意空格!

查看计划任务:

crontab -l

之后,cron守护进程将会自动执行step1中的脚本,为你清理多余的“npviewer.bin”进程。

参考

Flash leaving behind npviewer.bin ‘stuff'[URL:http://forums.freebsd.org/showthread.php?p=67155#post67155]
配置cron[URL:http://www.freebsd.org/doc/zh_CN/books/handbook/configtuning-cron.html]

原文链接:http://wiki.freebsdchina.org/howto/f/flash_process_ctrl

发表评论

电子邮件地址不会被公开。 必填项已用*标注