C# и асинхронный поиск элементов

  • Автор темы Автор темы Solehod
  • Дата начала Дата начала

Solehod

Новичок
Регистрация
20.07.2023
Сообщения
1
Реакции
0
Баллы
1
Здравствуйте, возможно ли использование асинхронных действий в браузере через C#? Идея такая: запустить несколько тасок на поиск элементов №1 и №2 и т.д. ... и в зависимости от того какая таска завершится быстрее запустить определённые действия (Аналог Promise.race() как в JS). Я посмотрел и в C# есть аналог в виде Task.WhenAny(), но ИИ после поиска по форуму и документации пишет: "В ZennoPoster (и большинстве инструментов автоматизации браузера) асинхронные функции и многопоточность в рамках одного экземпляра браузера ограничены. Основная причина заключается в том, что объект экземпляра браузера не является потокобезопасным.". Есть вариант сделать просто быструю проверку через while(true), но вот если была бы возможность сделать через async - было бы привычнее и красивее
 
Самый оптимальный вариант - поиск элемента и возврат какого-то значения, если нашли. После возврата кубик Switch и оттуда уже выполнение разных действий.
Да, в цикле.
И да, без асинхронности
 
  • Спасибо
Реакции: Solehod
Самый оптимальный вариант - поиск элемента и возврат какого-то значения, если нашли. После возврата кубик Switch и оттуда уже выполнение разных действий.
Да, в цикле.
И да, без асинхронности
А асинхронность вообще возможна при поиске элементов с помощью C#?
 
В теории да, но метод синхронный. Что вы хотите с помощью асинхронности реализовать?
Просто в фоне проверять состояние нескольких полей, пока выполняется цикл из кубиков.
 

Похожие темы

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)