Например, у меня есть функция, которая делает скриншот google.com
и сохраняет результат в базе данных. Я хочу, чтобы он работал каждые 24 часа, и не знаю, как это сделать .
Я имею в виду что-то классное, например триггер в javascript.
пример в js:
function ChangeDate() {
var changedate = ScriptApp.newTrigger('tOdAy')
.timeBased()
.everyDays(1)
.create();
}
Я пробовал sleep(time)
раньше в цикле while(true)
, но это не сработало.
function ss(){
Mycode();
}
Вы можете сделать это двумя способами:
Во-первых, нужно создать простой скрипт, который делает это, и выполнить его с помощью задания cron. Легко и просто.
Другой - создать длительный скрипт. Идея состоит в том, что вы создаете цикл, и внутри этого цикла вы вызываете тайм-аут, а затем выполняете свою функцию. Вы можете использовать reactphp/event-loop
для реализации этого очень легко, если вы используете композитор. Просто проверьте EventLoopInterface::addPeriodicTimer
метод.
Имейте в виду, что вы должны поддерживать этот длительный процесс с помощью некоторых инструментов, таких как systemd
или supervisord
.