Существует ли ограничение на количество рабочих в Firefox?

Я пытаюсь создать веб-рабочих и отправить им сообщения в цикле:

array.forEach(function (data) {
        this.createWorker();
        this.workers[this.workersPointer].postMessage({task: 'someTask', data: string});
    }, this);

createWorker function:

createWorker: function () {
    this.workersPointer++;
    var worker = this.workers[this.workersPointer] = new Worker('Worker.js'),
        storage = this;
    worker.onmessage = function (event) {
        if (event.data.error) {
            storage[event.data.task + 'Errback'](event.data.error);
        }
        else {
            storage[event.data.task + 'Callback'](event.data.data);
        }
    };
    worker.onerror = function (error) {
        storage.workerErrback(error);
    };
}

Worker code:

self.addEventListener('message', function (event) {
self.postMessage({
    data: data,
    error: err,
    task: event.data.task
});

}, false);

Он отлично работает в Google Chrome. Когда я пытаюсь запустить его в Firefox, он работает только 20 раз. Есть ли у веб-рабочих Firefox предел? Я не могу найти информацию об этом на сайте mozilla.org. Если лимита нет, в чем проблема? Есть идеи?

6
задан nfechner 18 February 2012 в 08:53
поделиться