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