Я пытался создать сервер, к которому могут подключиться несколько клиентов, но столкнулся с проблемой.У меня есть список со всеми текущими подключенными целями, и я хочу проверить, все ли они живы, без необходимости вручную подключаться к ним.
Это метод слушателя из написанного мною класса:
def listenForConnections(self):
self.s.bind((self.HOST, self.PORT))
while True:
self.s.listen(128)
c, addr = self.s.accept()
self.c = c
print("\n[+]Got a new connection!")
self.conns.append(c)
Как видите, он добавляет новый объект соединения в список, из которого вы затем можете выбрать цель с помощью метода getTarget () из того же класса, но я не буду вставлять его здесь, так как вы, вероятно,знаю, как это выглядит.Имейте в виду, что слушатель работает в отдельном потоке.Теперь я хотел бы написать функцию ping (), которая проверяет каждую пару секунд, все ли соединения в списке conns все еще живы, но я понятия не имею, как это сделать.Я думал, что в методе ping мне придется отправлять некоторые данные клиенту каждые пару секунд, но я боюсь, что это сломает всю программу, потому что клиент может думать, что это правильная команда, отправленная пользователем, а не какая-томусор, чтобы проверить, живо ли соединение или нет.