Спасибо за подробное объяснение.

ал, что асинхронная обработка, такая как чтение файла, обрабатывается в другом потоке и уведомляет основной поток об окончании чтения в другом потоке.

Я пытался следовать.

const fs = require("fs")

console.time(1)
fs.readFile("largefile", x => console.timeEnd(1))

Это показывает1500ms.

Во-вторых, я попытался следовать.

const fs = require("fs")

console.time(1)
fs.readFile("largefile", x => console.timeEnd(1))

// block main thread 1sec
const s = Date.now()
while(Date.now() - s < 1000);

Это покажет1500ms если процесс асинхронности обрабатывается в другом потоке. Тем не менее, я получил2500ms.

Я попробовал другой.

const fs = require("fs")

console.time(1)
fs.readFile("largefile", x => console.timeEnd(1))

setInterval(() => {
    const s = Date.now()
    while(Date.now() - s < 100);
}, 100)

Жду несколько минут, но сообщения нет.

Обработает ли nodejs тяжелую обработку в основном потоке?

Должен ли я использоватьchild_process когда мне нужно читать и писать слишком много больших файлов?

Ответы на вопрос(1)

Ваш ответ на вопрос