HTML5 / JS - начать несколько веб-работников

Я сейчас пишу программу, где мне приходится иметь дело с огромными массивами. Однако я могу разделить эти массивы. Мой план сейчас состоит в том, чтобы обрабатывать массивы в разных веб-работниках. Однако я никогда не работал с ними и у меня есть несколько вопросов:

1. Как бы я управлял несколькими веб-работниками? Я попробовал цикл for, похожий на этот:

for(i = 0; i < eD.threads; i++){
    //start workers here 
    var worker = new Worker("js/worker/imageValues.js");
    worker.postMessage(brightness, cD.pixels[i]);
}

Здесь я получаю ошибку, что объект не можетбыть клонированным Что кажется логичным. Я думаю, что было бы лучше сохранить их в массиве?

2. Как бы я контролировал, чтобы все закончили свою работу? (Мне нужно пересобрать массив и поработать с ним позже)

3. Сколько веб-работников действительно приносят улучшение?

4. Есть ли какой-нибудь продвинутый учебник, кроме MDN-записи?

Спасибо!

Ответы на вопрос(2)

Ваш ответ на вопрос