Если вы хотите, чтобы процесс node.js прекращался через 12 часов, вы можете просто установить таймер на 12 часов и позвонить process.exit()
.
setTimeout(function() {
process.exit(0);
}, 1000 * 60 * 60 * 12);
Если вы хотите использовать систему, как всегда, но вы оба хотите, чтобы остановить программу в течение 12 часов и не хотите навсегда перезапустить его, то вы можете просто запустить задание Хрон, запланированное на 12 часов после этого, чтобы выполнить forever stop /somepath/yourscript.js
.
P.S. Нет никакого способа, чтобы система, которая терпит неудачу сама по себе, часто бывает «неосторожной, но эффективной». Это может быстро развиваться, но оно также свободно и опасно и никогда не является эффективным способом кодирования в долгосрочной перспективе. Я предлагаю вам начать удаление всего technical debt, который вы испекли в свой код.
Мое любимое высказывание от бегущих команд развития в течение многих лет было несколько риторическим вопросом: «Почему в первый раз не хватает времени, чтобы сделать это правильно в первый раз, но всегда достаточно времени, чтобы сделать это, чтобы все исправить».
"Небрежное, но эффективный". Это проблема. Я читал это как быстро, но бесполезно. – undefined
;-) @ Vohuman: Я прошу не согласиться. Сценарий - любительский бот только для личного использования. Когда он падает, это только мешает мне, и не так много. Авария не влияет на ее эффективность вообще, если она перезапускается немедленно навсегда. Я все еще его разрабатываю и изучаю, как правильно использовать Node в этом процессе, а редкая обработка ошибок остается до конца. Кроме того, вы можете удалить введение (предназначенное только для смеха), вопрос все еще стоит :-) –