chrome 暂停时是否需要在后台服务工作者中删除监听器?
Is it necessary to removeListeners in background service workers for chrome extensions on suspend?
我正在添加听众,例如chrome.tabs.onRemoved.addListener
,在我的 chrome 分机后台服务工作者中。我正在阅读这里:https://developer.chrome.com/docs/extensions/mv3/service_workers/#unloading that
Service workers unload on their own after a few seconds of
inactivity
这是否意味着我不必调用 removeListener
逻辑来在 worker 挂起时删除我的侦听器?即 chrome.tabs.onRemoved.removeListener
在 browser.runtime.onSuspend
没有
当您注册一个侦听器时,Chrome 会在内部记住您的扩展程序的后台脚本希望在将来发生此事件时 运行,因此 Chrome 将唤醒您的后台脚本。如果您删除侦听器,Chrome 将不会为此事件唤醒您的后台脚本。
P.S。关于 service workers 的误导性文章可以用以下句子代替:MV3 后台脚本与 MV2 background script with "persistent": false
基本相同,除了缺少正常 tabs/windows 特定的内容,例如 DOM, XMLHttpRequest 等
我正在添加听众,例如chrome.tabs.onRemoved.addListener
,在我的 chrome 分机后台服务工作者中。我正在阅读这里:https://developer.chrome.com/docs/extensions/mv3/service_workers/#unloading that
Service workers unload on their own after a few seconds of inactivity
这是否意味着我不必调用 removeListener
逻辑来在 worker 挂起时删除我的侦听器?即 chrome.tabs.onRemoved.removeListener
在 browser.runtime.onSuspend
没有
当您注册一个侦听器时,Chrome 会在内部记住您的扩展程序的后台脚本希望在将来发生此事件时 运行,因此 Chrome 将唤醒您的后台脚本。如果您删除侦听器,Chrome 将不会为此事件唤醒您的后台脚本。
P.S。关于 service workers 的误导性文章可以用以下句子代替:MV3 后台脚本与 MV2 background script with "persistent": false
基本相同,除了缺少正常 tabs/windows 特定的内容,例如 DOM, XMLHttpRequest 等