import struct
import socket
import time
import multiprocessing as mp
SERVER_IP = "192.168.1.33"
PORT_BASE = 30000
import os
def recvall(conn, n):
# Helper function to recv n bytes or return None if EOF is hit
data = b''
while len(data) < n:
packet = conn.recv(n - len(data))
if not packet:
#print("hahahah","come here")
break
data += packet
#print(len(data))
#print("result ======",len(data))
return data
def recv_data(conn):
# result = result.decode("utf8")
data = b''
counts = 0
while True:
packet = conn.recv(1024)
counts += len(packet)
if not packet:
break
data += packet
print("++++++++++++++++",len(data),counts)
return data
def listen_client(port):
#server_port = PORT_BASE + port
# try its best to listen to bind the ports to receive data
while True:
try:
recv_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
recv_socket.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
recv_socket.bind((SERVER_IP,port))
print(" listening ",SERVER_IP,port)
recv_socket.listen()
break
except Exception as e:
print("bind port fails ", e, SERVER_IP)
os.system('fuser -k -n tcp ' + str(port))
time.sleep(3)
while True:
try:
conn, client_addr = recv_socket.accept()
recv_data(conn)
except Exception as e:
print(e)
for i in range(6):
print("================",PORT_BASE + 2 * i)
mp.Process(target=listen_client, args=(PORT_BASE + 2 * i,)).start()
07-25
3347
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
03-29
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交