При асинхронном подходе вызов метода выполняется как обычно, но управление возвращается вызывающему коду до того, как асинхронный метод завершит свою работу. После этого вызывающий код продолжает свое выполнение.
Особенность асинхронного выполнения: исполнение на стороне вызывающего кода продолжится до того, как полностью закончилось исполнение вызванного метода
Для правильного решения нужно вынести весь код, который должен быть выполнен после выполнения асинхронного действия, в экспортный метод и указать его имя в обработке оповещения, которая будет вызвана после завершения асинхронного действия. Или использовать асинхронность через обещания, например, Ждать ПредупреждениеАсинх(Текст);
Мета-информация (пожалуйста, заполните если знаете):
Номер стандарта: например: 124
Код проверки: code-after-async-call
Тип ошибки: WARNING
Критичность: MAJOR
Код ошибки АПК: например: 539, если аналогичная проверка существует
Параметры проверки
Текст ошибки
Код выполняются без ожидания выполнения асинхронного метода.
Пример некорректного решения
Текст = "Текст предупреждения";
ПоказатьПредупреждение( , Текст);
Сообщить("Закрыли предупреждение");
Описание, почему так делать нельзя
Пример корректного решения
Текст = "Текст предупреждения";
Ждать ПредупреждениеАсинх(Текст);
Сообщить("Закрыли предупреждение");
Название проверки
Код расположен после асинхронного вызова
Английское название проверки
The code is located after the asynchronous call
Правило анализа кода/метаданных
При асинхронном подходе вызов метода выполняется как обычно, но управление возвращается вызывающему коду до того, как асинхронный метод завершит свою работу. После этого вызывающий код продолжает свое выполнение. Особенность асинхронного выполнения: исполнение на стороне вызывающего кода продолжится до того, как полностью закончилось исполнение вызванного метода
Для правильного решения нужно вынести весь код, который должен быть выполнен после выполнения асинхронного действия, в экспортный метод и указать его имя в обработке оповещения, которая будет вызвана после завершения асинхронного действия. Или использовать асинхронность через обещания, например,
Ждать ПредупреждениеАсинх(Текст);
Мета-информация (пожалуйста, заполните если знаете):
например: 124
code-after-async-call
WARNING
MAJOR
например: 539
, если аналогичная проверка существуетПараметры проверки
Текст ошибки
Код выполняются без ожидания выполнения асинхронного метода.
Пример некорректного решения
Описание, почему так делать нельзя
Пример корректного решения
Дополнительные материалы