0
我在Python中使用簡單的tcp_server。下面是代碼: -爲什麼一旦接收到數據就必須重新啓動tcp_server程序?
import socket
TCP_IP = '127.0.0.1'
TCP_PORT = 5005
BUFFER_SIZE = 1024
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((TCP_IP, TCP_PORT))
s.listen(1)
conn, addr = s.accept()
#inputs = [conn, serial_obj]
outputs = []
#read_input.read_input(inputs,outputs)
while 1:
data = conn.recv(BUFFER_SIZE)
if not data: break
print "received data:", data
conn.send(data)
conn.close()
我的問題是,一旦接收到數據,則連接斷開,我必須重新運行tcp_server程序啓動連接。我如何保持它永遠聽。
你永遠不會接受一個新的連接。您接受一個連接,然後從中讀取。 –
對不起,我的意思是當我收到數據時,連接被中斷。爲了再次接收來自同一連接的數據,我必須重新啓動程序。我怎樣才能讓它聽取前程。 THANKs – PythonEnthusiast
您將收到每1024個字節。 –