У меня возникла проблема с простой программой, которая меняет цвет фона, когда получает команду с другой машины через TCP. Изменение цвета занимает около тридцати секунд. Я запускаю это через локальную сеть, поэтому ответ должен быть почти мгновенным. Я использую wxPython для фрейма. Я не думаю, что у меня слишком сложный код. Соответствующий код:
threader=threading.Thread(target=self.threading)
threader.start()
def threading(self):
host="192.168.1.122"
port=4100
s=socket.socket()
s.bind((host,port))
s.listen(1)
c,addr=s.accept()
print "Connected"
while 1:
data=c.recv(1024)
if not data:
break
data=data.split("_")
reading=int(data[1])
pin=int(data[0])
if pin == 1:
if reading<20:
self.front_left.SetBackgroundColour("red")
elif pin == 2:
if reading<20:
self.front_right.SetBackgroundColour("red")
elif pin == 3:
if reading<20:
self.bottom_left.SetBackgroundColour("red")
elif pin == 4:
if reading<20:
self.bottom_right.SetBackgroundColour("red")
else:
pass
c.close()
Мне нужно, чтобы этот код был мгновенным, так как это будет происходить на роботе, который сообщит, находятся ли объекты слишком близко (поэтому появляется красный фон, когда он находится в пределах 20 см от объекта). Любая помощь будет оценена!