Сначала я использовал системный планировщик, но он не выдерживал и полдня - задача заклинивала в положении “Работает” несмотря на то, что процесс завершился. И заного из-за этого не запускалась. И помогает только пересоздание.
Подобное поведение (Scheduled Tasks appear hung in the “Running” state on Windows Server 2003 based systems) широко описывается в интернете, но ни одно решение не помогло. В моём случае даже в логах планировщика никаких ошибок, пишет в логах “Итог: Задание завершено”, а в списке задач - “Работает”. И ни туды и не сюды.
Сейчас в роли планировщика выступает мой собственный скрипт. Работает он хорошо, плюс упростилось программирование.
Единственное но - иногда задача по скачиванию виснет, причём не могу отловить, на чьей причине проблема - “планировщика”, или самого скрипта.
По какой-то причине shell_exec() не возвращает управление, несмотря на то, что вызываемый скрипт самой последней строкой пишет в лог “DONE”, и по идее ну никак не может не завершиться.
Видимо, мне надо как в анекдоте про программу, которая следит за программой, предназначенной для перезапуска программы…
Disk is full writing '.\osm2\ways_filtered.MYD' (Errcode: 28).
Кстати, вот от этой ошибки ни один “отстреливатель” не поможет…
Толку, если я либо на работе, либо сплю?
Чем полезна - не понял, но пускай валяется