@doupiu said in Функция LOCK через базу данных:
@Fox а если у меня там уже есть внутри блоки с игнором ошибок? Что произойдет, если поток поймает ошибку в таком действии? Он выйдет из одного игнора ошибок или из всех сразу? Грубо говоря: в игноре ошибок работает вложенность?
При ошибки вложенного игнора ошибок сработает самый вложенный, так как в нём произойдёт ошибка, а во внешних ошибки не будет, так как она уже в блоке игнора. Вам проще и быстрее было попробовать самому проверить в BAS
@doupiu said in Функция LOCK через базу данных:
@Fox а также: если в скрипте настроены куча выходов из него вида if что-то - fail, то я так понимаю игнор ошибок тут не поможет и перед каждым fail нужно снимать lock отдельно. Это я к тому, что решение "обернуть все в один игнор" не 100% рабочее тут)
Во первых, в вашем первом сообщении нет упоминаний ни про if, ни про fail, я предложил решение под данные, что вы предоставили. Но даже в этом случае можно выйти из положения, например в текст действия fail поместить кодовое слово (например %fail%), а после игнора ошибок в Main поставить условие, если в тексте ошибки присутствует слово %fail%, то завершить поток с ошибкой не снимая блокировки элемента базы данных