Я объясню свой вопрос на примере.NodeJS: Кто выполняет асинхронную работу при вызове асинхронной функции?
fs.readFile('somefilename', function(err, data) {
...doSomething...
});
Когда эта строка кода выполняется readFile
начнет чтение файла. При успехе или неудаче этот обратный вызов будет переведен в очередь для выполнения с соответствующими аргументами.
Чтение файла происходит asynchronously
, но кто это делает, если NodeJS однопоточный, неблокирующий?
Асинхронное программирование не обязательно означает многопоточность. – Derek
Я думаю, что среда (в данном случае node.js) может быть многопоточной. Это только javascript-код, который является однопоточным. – MinusFour
@OliverQueen Хорошо. Мой вопрос: как читать файл и одновременно читать файл, а также запускать следующий код. –