В следующем коде я назначаю слушателю событие data
process.stdin
с помощью метода once
.
console.log('Press Enter to allow process to terminate')
process.stdin.once('data', callback)
function callback (data) {
console.log('Process can terminate now')
}
Теоретически, когда обратный вызов был запущен, прослушиватель событий должен быть автоматически удален (потому что я привязал его к once
), что позволило завершить процесс. Удивительно, но в этом случае процесс никогда не заканчивается (код, который вы видите, это все, попробуйте!). Я также попытался вручную удалить слушателя, но это ничего не меняет.
Есть ли что-то еще, что я не понимаю, возможно?