原文链接: revokeObjectURL 回收worker中创建的数据
上一篇: 图片 转 ico
https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL
在worker中创建的就要在worker中调用, 在主页面创建的, 就要在主页面调用
revoke之后, 就不能再通过url来展示或者下载了, 会直接报错, 一定要在确定该url不用的情况下去释放资源, 同时在主页面也删除url
mdn上的解释是可以在worker中使用, 但是不能在sw中使用, 主要是再终止worker时, 将该worker创建的url所依赖的数据干掉, 给浏览器回收
The
URL.revokeObjectURL()
static method releases an existing object URL which was previously created by callingURL.createObjectURL()
. Call this method when you've finished using an object URL to let the browser know not to keep the reference to the file any longer.Note: This feature is available in Web Workers .Note: This method is not available from service workers, due to issues with the
Blob
interface's life cycle and the potential for leaks
初始情况下没有imageData
我们创建一个并发送到worker后
我们在worker中调用revokeObjectURL, 注意在哪里创建的就要在哪里调用, worker中创建的不能在主页面调用函数来销毁