Всем привет!
Есть проект, который работает в браузере с сайтом на JS в 30 потоков. Скрипт создает существенную нагрузку на ЦП, что вызывает замедление работы скрипта, тормоза интерфейса BAS и т.д. Решил разобраться с помощью встроенного в BAS профилировщика (Отчет о времени выполнения действий), почему.
В итоге обнаружил, что одно действие создает 50% нагрузки на ЦП. Это действие "Проверить существование", которое в цикле while проверяет наличие на странице лоадера (после любого клика на сайте жду, когда пропадет лоадер, ибо по другому тут не определить полную загрузку страницы, сайт SPA на JS же).
Вопрос: как можно оптимизировать действие "Проверить существование" или отказаться от него в данном случае? Думал добавить просто задержку в цикл, но это снижает скорость реакции скрипта на загрузившуюся страницу.