Я создаю приложение с использованием Twisted, в котором сервер содержит несколько таймеров, и несколько раз в секунду он записывает значения таймера клиенту через UDP. Клиент должен иметь возможность отправлять различные команды (например, «таймер паузы 1» или «таймер сброса 2») на сервер для изменения таймеров, отправляемых клиенту. Проблема, которую я вижу, состоит в том, что клиент постоянно регистрирует значения таймера, полученные от сервера, поэтому я не уверен, как я могу сделать это без блокировки. Я хочу сделать это асинхронно, без каких-либо потоков. Twisted предоставляет множество вариантов асинхронного ввода-вывода, но я действительно не уверен, что будет наиболее подходящим, потому что некоторые из них (например, протокол basic.LineReceiver) все еще блокируются во время ожидания ввода пользователя.
Спасибо заранее,
Ben
P.S. это мой первый пост, поэтому, пожалуйста, дайте мне знать о любых улучшениях, которые я могу сделать.