zoukankan      html  css  js  c++  java
  • day45-多线程(server和多个client通信)

    #server:
    import socket
    from threading import Thread
    
    def func(conn):
        conn.send(b'hello client')
        ret = conn.recv(1024).decode('utf-8')
        print(ret)
        conn.close() #conn.close()放在这里是为了让每一个连接都关闭,如果放在外面就只能关闭最后一个连接。
    
    sk = socket.socket()
    sk.bind(('127.0.0.1',8080))
    sk.listen()
    
    while True:
        conn,addr = sk.accept()
        t = Thread(target=func,args=(conn,))
        t.start()
    
    sk.close() #如果sk.close()放在func的里面,第一个连接聊完天之后就关闭了整个通信,后面的连接都无法通信,所以必须放在外面。
    
    #client:
    import socket
    sk = socket.socket()
    sk.connect(('127.0.0.1',8080))
    ret = sk.recv(1024).decode('utf-8')
    print(ret)
    msg = input('>>>')
    sk.send(msg.encode('utf-8'))
    sk.close()
  • 相关阅读:
    springboot基本注解
    Mybatis之简单注解
    java再次学习
    在线html编辑器
    分享
    cyberduck的SSH登录
    ie67的冷知识
    css特效
    小程序分享
    css特效博客
  • 原文地址:https://www.cnblogs.com/python-daxiong/p/12142770.html
Copyright © 2011-2022 走看看