def do_socket():
    # time.sleep(1)
    # 1.创建socket对象
    print(‘start socket‘)
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    if s == -1:
        print(‘Error: socket error‘)
        return
    # 2.绑定端口
    s.bind((IP_addr, Port))
    # 3.服务端监听操作时刻注意是否有客户端请求发来
    s.listen(128)  # 同时监听128个
    # 4.同意连接请求
    while True:
        try:
            #print(‘client connectting‘ )
            client_socket, client_addr = s.accept()
            print(‘client connected ‘, client_addr)
#save_sta_addr(client_addr)
            packet_th = threading.Thread(target=do_packet, args=(client_socket,), daemon=True)
            packet_th.start()
        except:
            print(‘Info: close socket‘, s)
            s.close()
            break;
    return
原文:https://www.cnblogs.com/wishdom-zzzx/p/14490327.html