Firefox中web worker的内存泄漏

Firefox中web worker的内存泄漏,firefox,canvas,memory-leaks,web-worker,Firefox,Canvas,Memory Leaks,Web Worker,当我在firefox中运行web worker时, 工作脚本: self.addEventListener('message', function(e){ var sBufferData = source buffer of imageData( Uint8ClampedArray ) var resultBuffer = result buffer of operation( Uint8Array ) for(...) //double for loop operate

当我在firefox中运行web worker时, 工作脚本:

self.addEventListener('message', function(e){
    var sBufferData = source buffer of imageData( Uint8ClampedArray )
    var resultBuffer = result buffer of operation( Uint8Array )
    for(...) //double for loop operate
       for(...) //get resultBuffer array

    self.postMessage(resultBuffer);

    resultBuffer = sBufferData = undefined;

    self.close(); //web-worker close itself
}, false);
主脚本:

var imageWorker = new Worker("imageWorker.js");
imageWorker.postMessage(source buffer of imageData);
imageWorker.onmessage = function(e) {
    //operation...
    imageWorker.terminate(); //web-worker terminate in main thread
    e.data = imageWorker = undefined;
}
我的图片是一张3246*2448的图片,当我使用web worker时,FireFox中会出现内存泄漏问题

每次处理一张图像平均需要200MB。 之后,FireFox将保持200MB的内存占用

因此,每次处理都需要200MB,直到内存不足


只有Firefox有问题。为什么它不释放内存?我不明白。有什么想法吗?

firefox版本29中的GC问题修复程序。