Im создает систему p2p, когда одноранговые узлы постоянно прослушивают входящие соединения (новые сверстники) и отправляют команды через терминал (пользовательский ввод) другим аналогам. Мне сложно искать пользовательский ввод с клавиатуры, всегда ищущих новых сверстников.неблокирующий ввод клавиатуры python
print 'Listening...'
while not shutdown:
while sys.stdin in select.select([sys.stdin], [], [], 0)[0]: #look for keyboard input... not working
line = sys.stdin.readline()
if line:
send_message(line)
else: # an empty line means stdin has been closed
print('eof')
exit(0)
try: # listen for other peers
clientsock,clientaddr = mySocket.accept()
print 'Incoming connection from', clientaddr
clientsock.settimeout(None)
t = threading.Thread(target = HandlePeer, args = [clientsock])
t.start()
except KeyboardInterrupt:
print "shutting down"
shutdown = True
continue
except Exception,e:
print 'error in peer connection %s %s' % (Exception,e)
mySocket.close()
HandlePeer проверяет входящие сообщения от вновь подключенного партнера. Мне просто нужен способ отправки сообщений.