У меня есть клиент-серверное приложение, которое я делаю, и у меня возникают проблемы, когда сервер ожидает данных от клиента.
После того, как мой клиент подключается к сокету сервера, сервер открывает ему новый поток и получает данные от клиента (в формате JSON). Пока мой код работает для одного сообщения. Когда я добавил цикл while, который всегда принимает сообщения, у меня возникла проблема. После некоторых тестов я обнаружил, что функция recv() не ждет новых данных и переходит к следующей строке, и это создает проблему. Буду рад, если вы поможете мне решить проблему.
мой цикл приема данных (первая итерация цикла работает, но получение данных во второй итерации не ждет данных и создает проблему, потому что следующая строка не получает никаких данных) -
while True:
data = self.client.recv(self.size) # receive data
message = self.JSON_parser(data) # parser the data (data in json format)
process_message = processing.Processing(message[0]['key'],message[0]['user'],message[0]['data']) # send the receive data to the initialize process
process_return = process_message.action() # call to the action function
self.client.send(process_return) # send to the client message back
data
после возвращенияrecv()
? Пустая строка? - person Andrea Corbellini   schedule 02.02.2016