首页 > 解决方案 > Socket Server 拒绝多线程连接

问题描述

我正在尝试做一个多线程的python套接字服务器,我创建了一个线程来监听连接并接受它们,在其中我还为每个新连接创建子线程。

问题:与一个客户端建立连接后,当另一个客户端尝试连接时,我在客户端收到以下错误:

connectionrefusederror: [winerror 10061] 无法建立连接,因为目标机器在 multiclientgui 中主动拒绝了它>>>

我不想尝试多处理来创建仅用于收听的进程,这是我的代码中的内容吗?还是在操作系统中(Windows 10)?或者会是什么?

def serv():
    """ the main thread for listening"""

    global future ,soc ,add

    while True:

        s.listen(5)
        soc,add =s.accept()
        future =pool.submit(clientHandle,soc,add) #handling thread 
        print(" a new thread created to serve the client")

def clientHandle(socObj, address):
    print("thread been called")

    global client_data
    client_data =pd.DataFrame(columns=['Location','lat','long','speed','ID','Time'])

    client_sockets.append(socObj)
    client_addr.append(address)
    while True :
        content=socObj.recv(1024)
        if len(content)>0:
            data=content.decode()
            str(data)
            print(data)

标签: pythonmultithreadingsocketsserver

解决方案


推荐阅读