Выбор ответа Middle Файлы и процессы обновлено
Зачем child_process.fork
Вопрос
Чем fork("worker.js") отличается от spawn("node", ["worker.js"])?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: fork открывает IPC-канал: send() и событие message. fork это специальный spawn для Node-скриптов, который дополнительно открывает IPC-канал.
Варианты ответа
- fork открывает IPC-канал:
send()и событиеmessageправильный ответ - fork запускает код в том же процессе, как воркер
- fork использует общую память с родителем без копий
- Ничем, это синонимы для запуска Node-скриптов
Разбор
fork это специальный spawn для Node-скриптов, который дополнительно открывает IPC-канал. Сообщения сериализуются и передаются между процессами.
- Код выполняется в отдельном процессе со своей памятью; в том же процессе работают
worker_threads. - Общей памяти между процессами нет,
SharedArrayBufferдоступен только у воркеров. - Без IPC-канала
spawnне дастsend().
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.