«Запуск с ограничением потоков» для асинхронных функций

Поддержка
  • Здравствуйте всем.
    Имею такую схему проекта :
    -MAIN на запросах выполняется в 3-30 потоках. Каждый поток на своей проксе и куках. По триггеру MAIN запускает асинхронную функцию (с полноценным браузером) , но не более одного экземпляра на «своей» же проксе и кукисах . Чтобы не было «перехлеста» проксей, и кукисов - контроль через глобальные переменные.
    Актуальная нерешенная задача:
    Ограничить количество запускаемых асинх функций с браузерами (допустим 2-3 для всех MAIN). Остальные пусть стоят в очереди

    Попробовал воспользоваться кубиком «Выполнить с ограничением потоков». 8f45b15b-85a8-4530-bd55-02019faa4354-image.png
    Вроде сделал как в примере … запускается только один поток с браузером в котором пытаются отработать все потоки, а в «Информация о ограничении потоков» все по нулям

    «Скелет» задумки без деталей (как то прокси, куки и глоб.переменные) прилагается limitation_THREADS.xml
    Что я не доделал?

  • Привет. В твоем коде ты ограничиваешь сам "Запускатель" нового потока. Этот кубик выполняется мгновенно и поэтому это все не работает. Код в блоке ограничение потоков должен "зависать" на полезную работу, тогда он будет работать корректно:

    limit.xml

  • @Int64 , . Я только учусь. Спасибо за пример - буду "курить" как с асинх обращаться, а то все методом "ненаучного тыка" )))

  • 0 Votes
    4 Posts
    641 Views
  • 0 Votes
    3 Posts
    530 Views
  • 0 Votes
    4 Posts
    898 Views
  • Баг с базой

    Поддержка
    0 Votes
    1 Posts
    686 Views
  • 1 Votes
    2 Posts
    1432 Views