Если по времени - то проще включать планировщик
Выполнение действия после завершения работы скрипта
-
Было бы классно иметь "OnApplicationEnd", но раз его нет, то только костыли. Я делаю из функции "Main" "OnApplicationStart", заворачиваю основной код в отдельную функцию и вызываю её через "Вызов функции в несколько потоков", а дальше идет код который нужно выполнить в конце работы скрипта (так кстати можно сделать многопоточность в зависимости от количества строк в файле)
-
Я уже писал об этом
А так же о том что б добавил и событие об окончании потока.
https://community.bablosoft.com/topic/11401/выполнение-действия-при-любом-результате-завершения-потока/4