Встречается на собеседованиях • сегодня

Как организовать параллельное выполнение кода в браузере

В браузере параллельное выполнение кода можно организовать с помощью:

  1. Web Workers - выполняют код в отдельном потоке, не блокируя основной:
js
// main.js
const worker = new Worker('worker.js');
worker.postMessage('data');
worker.onmessage = (e) => console.log(e.data);

// worker.js
onmessage = (e) => {
const result = heavyCalculation(e.data);
postMessage(result);
};

text

2. **Service Workers** - для фоновых задач (кеширование, push-уведомления)

3. **setTimeout/setInterval** с нулевой задержкой - позволяет разбить тяжелые задачи на части:
```js
function processChunk() {
  // Часть работы
  if (moreWork) setTimeout(processChunk, 0);
}
  1. requestIdleCallback - выполнение задач в периоды простоя браузера

Важно: Web Workers не имеют доступа к DOM и ограничены в API. Для обмена данными используется postMessage.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы