关闭浏览器页面选项卡但不退出浏览器进程时,杀死NPAPI插件实例的正确方法是什么?

时间:2014-01-07 01:32:06

标签: process exit npapi

在Windows上,当关闭引用的浏览器选项卡时,插件进程将立即退出。但是在mac os x上,当我关闭浏览器的选项卡(不退出浏览器的进程)时,插件进程仍然保持很长时间,之后,它关闭异常。 那么我的问题是我如何正常退出NPAPI插件流程?谢谢你的回答,抱歉我的英语不好。 顺便说一句,我的操作系统是mac os x 10.8,我使用的是Xcode 4.5。

因为我的插件必须支持chrome,我使用32位arch,我不能使用OC的ARC,然后我必须手动管理内存。当我检查我的代码时,我怀疑每次调用NPP_GetValue我应该使用browser-> retainObject,但只在实例被销毁时调用releaseObject一次。反正我不确定。

1 个答案:

答案 0 :(得分:2)

你没有。当插件进程结束时,这取决于您,这取决于浏览器。例如,Chrome会让插件进程在短时间内保持活动状态,以避免在有人使用插件的唯一实例重新加载页面时进行颠簸,或者使用相同的插件在两个页面之间导航。

你的错误并不是这个过程暂时保持活着,而是当它退出时崩溃了。您应该调试并修复崩溃。