zoukankan      html  css  js  c++  java
  • 多线程并发练习(Day35)

    练习一

    #_*_coding:utf-8_*_
    #!/usr/bin/env python
    import multiprocessing
    import threading
    
    import socket
    s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    s.bind(('127.0.0.1',8080))
    s.listen(5)
    
    def action(conn):
        while True:
            data=conn.recv(1024)
            print(data)
            conn.send(data.upper())
    
    if __name__ == '__main__':
    
        while True:
            conn,addr=s.accept()
    
    
            p=threading.Thread(target=action,args=(conn,))
            p.start()
    
    多线程并发的socket服务端
    多线程并发的socket服务端
    #_*_coding:utf-8_*_
    #!/usr/bin/env python
    
    
    import socket
    
    s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    s.connect(('127.0.0.1',8080))
    
    while True:
        msg=input('>>: ').strip()
        if not msg:continue
    
        s.send(msg.encode('utf-8'))
        data=s.recv(1024)
        print(data)
    
    客户端
    客户端

    练习二:

    三个任务,一个是接收用户输入,一个将用户输入的内容格式化成大写,一个将格式化后的结果存入文件

     1 from threading import Thread
     2 msg_l=[]
     3 format_l=[]
     4 def talk():
     5     while True:
     6         msg=input('>>: ').strip()
     7         if not msg:continue
     8         msg_l.append(msg)
     9 
    10 def format_msg():
    11     while True:
    12         if msg_l:
    13             res=msg_l.pop()
    14             format_l.append(res.upper())
    15 
    16 def save():
    17     while True:
    18         if format_l:
    19             with open('db.txt','a',encoding='utf-8') as f:
    20                 res=format_l.pop()
    21                 f.write('%s
    ' %res)
    22 
    23 if __name__ == '__main__':
    24     t1=Thread(target=talk)
    25     t2=Thread(target=format_msg)
    26     t3=Thread(target=save)
    27     t1.start()
    28     t2.start()
    29     t3.start()
    有一种能力,是持续不断的努力
  • 相关阅读:
    前端脚手架的那些事儿
    CSS重置默认样式reset.css代码模板
    Web 3.0 前瞻:基于区块链的下一代浏览器
    关键词定位是网站推广的基础
    6年架构师针对web前端小白,作出的职业规划建议
    和程序员约会的优点和缺点
    如何在软件开发中避免出现漏洞
    Linux下修改时区
    前端需要掌握的Nginx知识
    Nginx入门指南
  • 原文地址:https://www.cnblogs.com/shaojiafeng/p/7453465.html
Copyright © 2011-2022 走看看