Переходите на http клиент и работайте через GET/POST запросы. Полная эмуляция браузера - тяжелый процесс, поэтому и лаги возникают. У меня тоже комп с 12 ядерным ryzen и 32 гб оперативы не вывозит больше 15-25 браузеров. http клиент если грамотно им пользоваться по словам разработчиков может выдерживать до 2000 потоков. Я запускал 100 потоков через http клиента и нагрузка на процессор была в районе 1%.
Контроль потоков
-
Подскажите, как реализовать логику:
берутся данные из базы, которые отрабатываются по очереди
как реализовать логику которая будет контролировать (удерживать) потоки, пока все полностью не отработают?
например я ставлю 2 потока, в случае если 1 завершил основную работу, нужно чтобы он дожидался окончания 2го потока. по завершению основного кода в потоках нужно перезагрузить прокси (открыть ссылку), подождать перезагрузки и запустить следующие 2 потока -
В OnApplicationStart создаёшь глобальную переменную KONTROL назовем её, которая будет считать потоки
Общее количество потоков ты и так знаешь либо подтягивешь из ресурсов (или где ты там их указываешь)
Как только поток прошел определенную точку повышаешь KONTROL, а дальше в нужном моменте ставишь условие, НАПРМЕР если KONTROL != количеству потоков, то пусть идет спать, а потом проверит еще раз
Условие под свои задачи сделай)Вроде получилось ответить на вопрос насколько это возможно