@gurkin4 может у него родной узбекский, че ты пристал к человеку, все же поняли друг друга ...
Как в басе сделать общий таймер на выполнение всего скрипта?
-
Допустим у меня есть скрипт с какой то логикой, я его запускаю он идет по пунктам
А можно как то сделать второстепенный таймер который будет отсчитывать время выполнения скрипта, что бы было ограничение выполнения скрипта скажем 5 минутами? И по истечению этого времени, завершаем проект по BadEnd, может можно как то сам поток так ограничивать? Только конечно еще нужно завершение с ошибкой, что бы данные все сохранились куда нужно
-
Нет все таки Асинхронная не подходит
Так как таймер (В виде асинхронной функции я запускаю в самом начале)
А основной поток (Из которого была запущена асинхронка) делает определенные действия и по всякому редактирует строку с данными и может где то очень долго задержаться, но строка с данными уже будет с изменениями
И мне нужно при завершении потока по таймеру (который выполняет функция вызвана асинхрнонно)
Записать эту строку в которой могли меняться данные, а асинхронная функция не может получить данные из основного потока, только те которые при запуске отправилХотя, сейчас подумал можно наверное ресурсы для этого использовать
-
В общем по тестил асинхронную функцию. Она видит данные в ресурсе, но только те которые были записаны в ресурс до ее запуска. Данные которые записываются в ресурс во время выполнения асинхронки, она не видит.
Да и поток из которого запущена асинхронная функция уже внутри асинхронной функции нельзя остановить по истечению таймера...
Только если прервать весь скрипт... -
@anarbus в глобальной переменной укажите время окончания работы, и пусть каждый поток периодически проверяет, не вышло ли это время, если вышло - завершить работу. А в асинхронной функции можно установить жесткий останов скрипта, если время превышено вдвое, например. Хотя, если всё отлажено, то асинхронка и не нужна.