Python套接字 - 从服务器向客户端发送变量

时间:2014-12-23 05:21:58

标签: python multithreading sockets

我正在为客户端/服务器应用程序使用套接字,例如,当用户单击按钮时,我需要将服务器中的变量发送回客户端。我正在使用wxpython。

以下是我的服务器代码示例:

def handler(self, clientsocket, clientaddr):
    data22 = clientsocket.recv(1024)
    while 1:
        msg = "Message to send"
        clientsocket.sendall(msg)
    clientsocket.close()

def listen(self):
    host = ''
    port = 55567
    buf = 1024
    addr = (host, port)
    self.serversocket = socket(AF_INET, SOCK_STREAM)
    self.serversocket.bind(addr)
    self.serversocket.listen(2)
    while 1:
        if self.canExit:
            print "trying to break"
            break
        print "Server is listening for connections\n"     
        clientsocket, clientaddr = self.serversocket.accept()
        threading.Thread(target=self.handler, args=(clientsocket, clientaddr)).start()
    print "closing the socket"
    self.serversocket.close()

以下是我的客户代码示例:

def SendFolder(self):
    HOST = host=self.params["databaseLocation"]    # The remote host
    port = 55567
    buf = 1024
    addr = (host, port)
    clientsocket = socket(AF_INET, SOCK_STREAM)
    clientsocket.connect(addr)
    if self.abortThisJob != False:
        clientsocket.sendall(self.abortThisJob)
    else:
        clientsocket.sendall("Send Job")

    self.listenThread = threading.Thread(target=self.listen, args=(clientsocket, buf))
    self.listenThread.daemon= True
    self.listenThread.start()

def listen(self, clientsocket, buf):
    while 1:
        data = raw_input(">> ")
        clientsocket.send(data)
        data = clientsocket.recv(buf)
        print data

0 个答案:

没有答案