zoukankan      html  css  js  c++  java
  • 多并发执行程序

    # 使用进程池多并发执行程序
    from multiprocessing import Pool,Value,Lock,Manager
    import os,time,random
    
    import multiprocessing
    import logging
    import sys
    
    def run_task(name,requestCount,countList):
        # with lock:
        requestCount.value=requestCount.value+1
        print('计数:',requestCount.value)
        countList.append(requestCount.value)
        time.sleep(0.1)
        print('run task %s (%s)'%(name,os.getpid()))
    
        sys.stdout.flush()
    
    if __name__=="__main__":
        # 进程日志
        # 设置日志输出到控制台
        multiprocessing.log_to_stderr()
        logger=multiprocessing.get_logger()
        logger.setLevel(logging.INFO)
    
        m=Manager()
        reqeustCount=m.Value('i',0)
        countList=m.list([])
        print('Parent process: ',os.getpid())
        # lock=m.Lock()
        p=Pool()
        for i in range(5):
            p.apply_async(run_task,args=(str(i),reqeustCount,countList))
        p.close()
        p.join()
        print('end!')
        print(reqeustCount.value)
        print(countList)
  • 相关阅读:
    HTML5+php图片自由裁剪上传功能
    一个日期时间显示框的美化风格示例
    PHP+jquery 瀑布流+LightBox图片盒子特效
    类型
    异常语句
    穷举
    练习
    累加求和
    猜拳游戏(三局两胜)
    正则表达式
  • 原文地址:https://www.cnblogs.com/reyinever/p/10858764.html
Copyright © 2011-2022 走看看