zoukankan      html  css  js  c++  java
  • socket 编程中。 服务端用到多线程

    客户端连接服务端之后, 服务端会生成与客户端交换信息的socket。

    在服务端实现多线程: 为每个连接创建一个线程进行信息交换。

    import threading
    from socket import *
    from time import ctime
    
    HOST='127.0.0.1'
    PORT = 1111
    BUFSIZE= 1024
    ADDR = (HOST,PORT)
    
    tcpSerSock = socket(AF_INET, SOCK_STREAM)
    tcpSerSock.bind(ADDR)
    tcpSerSock.listen(4)
    
    
    class MyThread(threading.Thread):
    
        def __init__(self, tcp_client):
            threading.Thread.__init__(self)
            self.clientSocket = tcp_client
    
        def run(self):
            while True:
                data = self.clientSocket.recv(1024)
                print data
                if not data:
                    break
                self.clientSocket.send('[%s] %s' % (ctime(), data))
                if data == None:
                    tcpCliSock.close()
    
    
    while True:
        print 'waiting for connection...'
        tcpCliSock, addr = tcpSerSock.accept()
    
        print '...connection from:', addr
        MyThread(tcpCliSock).start()
    
    
    tcpSerSock.close()
  • 相关阅读:
    jquery.md5
    LoginPasswordHelp
    RSA(非对称加密算法、公钥加密算法)
    Swiper 3.4.1
    layer web 弹窗
    操作系统
    查看命令帮助
    软件卸载
    重定向命令
    终端命令格式的组成
  • 原文地址:https://www.cnblogs.com/lijins/p/10193249.html
Copyright © 2011-2022 走看看