Штатными средствами нельзя.
Только если вводить глобальную переменную, которая будет сигнализировать о том, что надо потоки ставить на паузу.
Потом создать функцию, которая проверяет статус этой глобальной переменной, и если статус пауза - запускать цикл с паузой с проверкой, не снялась ли пауза.
Потом уже в код потока пихать эту функцию в наиболее критичных местах, где стоит поставить поток на паузу.
Отслеживание полного завершения работы сценария
-
Здравствуйте коллеги!
Не удаётся нагуглить грамотное решение, позволяющее корректно отследить момент полной остановки BAS, чтобы перед этим выполнить ряд инструкций.
Всё, до чего додумался, в "OnApplicationStart" размещаю глобальную переменную-счётчик, на старте каждого потока её приращиваю на единицу и в месте удачного/не удачного завершения вызываю функцию, которая приращивает эту переменную на минус единицу и проверяет признаки отмены на предмет истинности, если переменная становится равна нулю. Соответственно, если любой из них возвращает
true, то 100% все потоки завершились по объективным причинам.Но, что, если я принудительно останавливаю программу из оболочки?
Подскажите пожалуйста, есть ли способ грамотно это распедалить?