2015-05-26 2 views
0

Отказ от ответственности, мое знание node.js несколько статей, в основном суммированы этим http://en.wikipedia.org/wiki/Node.jsНижняя сторона node.js?

что сказал, так я понимаю, что это должно быть очень быстро, потому что она позволяет избежать накладных расходов на резьбе. Он помещает все в один цикл, вместо того чтобы выполнять накладные расходы на переключение между процессами.

Я предполагаю, что есть причина, почему существует сложный метод переключения контекстов полностью между потоками. Мой вопрос в том, в чем преимущество наличия потоков над подходом node.js?

+0

Это очень пограничная тема. Я рекомендую немного переформулировать (а именно, «Что такое польза ...»), пока кто-то еще не станет более сумасшедшим и не отметит вас :) – Qix

+0

А? В чем разница между «Что такое польза ...» на «Что такое недостаток ...»? –

+0

Ничего; они могут быть легко истолкованы как не относящиеся к теме (основанные на мнениях). – Qix

ответ

2

Node.js чрезвычайно быстр с интенсивными задачами ввода-вывода, поскольку его модель событий отлично поддерживает задержки ввода-вывода. С другой стороны, он полностью не способен выполнять задачи с интенсивным использованием ЦП без остановки всего. Таким образом, если вам нужен какой-то тяжелый расчет, вам нужно будет отменить работника, чтобы сделать это за вас.

Резьбовая модель переключает контексты автоматически, независимо от того, что делает поток, и, таким образом, может обрабатывать задания с интенсивным использованием процессора, не слишком сильно влияя на другие потоки. (Вернее, они все равно будут работать, только медленнее, если будет достигнута мощность ЦП.)

Смежные вопросы