Каков эффективный способ трансляции сообщений? - PullRequest
0 голосов
/ 03 марта 2020

В простом консольном чат-приложении, использующем только сокеты без потоков, в котором клиент отправляет сообщение на сервер, а сервер получает его, а затем передает сообщение всем сокетам клиента, но все клиенты блокируются message = input(f'{my_username} > '), поэтому все клиенты должны нажать Enter (как пустое сообщение) для получения сообщения, отправленного с сервера.

Существует ли эффективный способ исправить эту проблему без использования потоков, поскольку все клиенты заблокированы input в while loop

Простой пример клиента может быть:

while True:
    # HERE where each client is stopped by input
    # Wait for user to input a message
    msg= input(f'{USERNAME} > ')

    # If message is not empty - send it
    if msg:
    # send message if not empty

    # if not means receiving anything from server
    ....
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...