@Xymis

Как реализовать следующую асинхронную конструкцию?

Здравствуйте!
Не могу реализовать следующую задумку:
Необходим маленький сервак на сокетах для TCP подключения, который будет управлять функцией
По большей части функция - генератор ( из итератора ), проходит по слишком большую массиву
А управление необходимо следующее
Если на сокет падает сообщение start - начать двигаться по списку
Если на сокет падает сообщение pause - приостановиться
Если на сокет падает сообщение stop - прервать прохождение по ссылке.

Пока что дошел до следующей идеи:
Основной эвент луп, в нем изначально корутинка на handle http
При получение start необходимо запустить вторую корутину и закинуть ее в луп, чтоб была конкуретность ( одна корутина ждет сообщение, вторая бежит по списку )
Ну и соответственно обработать запросы пользователя

Я могу максимум запустить две корутины ( но не от того, что пришел запрос )
Расскажите, как на python реализовать общение между двумя корутинами, буду очень благодарен
Буду очень рад примеру кода
Заранее спасибо!
  • Вопрос задан
  • 66 просмотров
Решения вопроса 1
@dooMoob
1) генератор должен быть асинхронный, иначе все это не заработает
2) общение так же как и в случае потоков - очереди, глобальние переменные, етц
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
SpectrumData Екатеринбург
от 150 000 до 200 000 ₽
Гринатом Москва
от 150 000 ₽
Greenway Global Новосибирск
от 150 000 ₽
13 июн. 2024, в 13:38
3000 руб./за проект
13 июн. 2024, в 13:30
1500 руб./за проект