Возможно ли создать несколько потоков в nodejs. Я не спрашиваю, используя Cluster или fork или exec. Фактически он создает дочерний процесс вместо потока. Мне нужна фактическая реализация отдельного потока в node.js.Многопоточность в узле.js
ответ
NodeJS в настоящее время не поддерживает несколько потоков. Там были разговоры (и даже работа над), обеспечивающие поддержку потоков, но это еще не произошло (пока?). В этом отношении, похоже, нет большого толчка.
Поиск «NodeJS multiple threads» найдет такие вещи, как JXcore, хотя утверждает, что совместимость с NodeJS на 100% (это вилка с «добавленными функциями»). YMMV.
Хорошо спасибо, но есть ли способ, с помощью которого мы можем применить приоритет к заданиям в очереди в цикле событий nodejs. – Sanket
@Sanket: Это был бы совершенно отдельный вопрос. Я бы опубликовал его как один. –
As T.J. Помните, вы можете использовать JXcore. Это проект с открытым исходным кодом.
Самый простой способ запустить приложение многопоточных будет:
console.log("Hello thread", process.threadId);
и запустить его таким образом:
$ jx mt:3 hello.js
Он работает 3 нитей/экземпляры внутри одного процесса.
Есть также другие способы использования Jxcore, чтобы использовать tasks в потоках.
- 1. порядок функций в узле.js
- 2. Понимание события-цикла в узле.js
- 3. Итереть через значения в объектах в узле.js
- 4. Когда создавать каналы RabbitMQ в узле.js
- 5. Ошибка: не удается найти модуль в узле.js
- 6. Обработка URI windows-1250 в узле.js/express
- 7. Как сделать Auth в узле.js client
- 8. Проверьте фактический тип файла в узле.js
- 9. Сумма чисел из списка в узле.js
- 10. Создайте и уничтожьте процесс в узле.js
- 11. Осмотрите живые объекты/стек в узле.js
- 12. Многопоточность
- 13. Запуск дочерних процессов на облачном литейном узле.js
- 14. Как обрабатывать модули в асинхронном приложении в узле.js
- 15. Просмотр внешнего контента в режиме реального времени в узле.js
- 16. Couchbase get/getMulti терпит неудачу в тайм-ауте в узле.js
- 17. Определение объекта в верхней части клиентских файлов в узле.js
- 18. Как получить JSON в экспресс-узле.js POST-запрос?
- 19. Создайте экземпляр V8 в узле.js с низкой задержкой
- 20. Как вы получаете достоверное значение TTL-записи в узле.js?
- 21. Как использовать CommonJS и AMD бок о бок в узле.js
- 22. Разбиение текстового файла на основе количества строк в узле.js
- 23. Максимальное время выполнения для длительного процесса в узле.js
- 24. Использование рабочих/фоновых процессов в узле.js против асинхронного вызова
- 25. Многопоточность в Workflow 4.0
- 26. Многопоточность в Tcl
- 27. Многопоточность в python
- 28. Многопоточность в pygtk
- 29. Многопоточность в MVC 4
- 30. Многопоточность в python 2.7
Существует только один поток в node.js, вы можете использовать spawn для запуска большего экземпляра node.js, но child_process будет намного более эффективным. Что вы пытаетесь использовать для нескольких потоков? – DrakaSAN
Что вы пытаетесь сделать? Вероятно, вам действительно не нужны потоки. – Jivings
Но только в одном потоке мое приложение реагирует поздно, так как оно выполняет серию заданий параллельно. Поэтому я хочу выполнять важные задания в отдельном потоке, чтобы он быстро отвечал на эти задания. – Sanket