Node.js - однопоточный, неблокирующий?
Я изучаю Node.js и прочитал, что Node.js является однопоточным и неблокирующим.
Я хорошо разбираюсь в JavaScript и понимаю обратные вызовы, но я не совсем понимаю, как Node.js может быть однопоточным и запускать код в фоновом режиме. Разве это не противоречит?
Потому что, если Node.js является однопоточным, он может выполнять только одну задачу за раз. Так что, если он запускает что-то в фоновом режиме, он должен остановить текущую задачу, чтобы обработать что-то в фоновом режиме, верно?
Как это работает практически?