Вопрос о том, что "все работает параллельно, кроме вашего кода", задан кем-то новым для Node.js. Это явно искусственный пример, но, скажем, я хочу создать математическую библиотеку, содержащую функцию factorize()
, которая ведет себя следующим образом:
var http = require('http');
http.createServer(function (req, res) {
myMath.factorize(some_big_number,function(factors) {
res.writeHead(200, {'Content-Type': 'application/json'});
res.end(JSON.stringify(factors));
}
}).listen(8000);
Как это можно написать так, чтобы он "работал параллельно"?
Я рассматривал код синтаксического анализа этой библиотеки в качестве примера, который может занять некоторое время обработки. Тело кода считается "вашим кодом", или оно "работает параллельно"?
Если нет: что мне нужно делать при написании factorize()
, чтобы он также не блокировал / вел себя как клиент? Достаточно ли использовать EventEmitter?
Если так: мой лучший вариант по-прежнему использовать дочерние процессы , как предложено в этом вопросе ?
Заранее извиняюсь за отсутствие ясности.