博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
书接前文,用多进程模式实现fibonnachi并发计算
阅读量:4315 次
发布时间:2019-06-06

本文共 1409 字,大约阅读时间需要 4 分钟。

#coding: utf-8import loggingimport osimport randomimport sysimport timeimport re# import requests# import concurrent.futuresfrom multiprocessing import cpu_count, current_process, Manager, Queue, Processlogger = logging.getLogger()logger.setLevel(logging.DEBUG)formatter = logging.Formatter('%(asctime)s - %(message)s')ch = logging.StreamHandler()ch.setLevel(logging.DEBUG)ch.setFormatter(formatter)logger.addHandler(ch)def producer_task(q, fibo_dict):    for i in range(15):        value = random.randint(1, 20)        fibo_dict[value] = None        logger.info("Producer [%s] putting value [%d] into queue.. " % (current_process().name, value))        q.put(value)def consumer_task(q, fibo_dict):    while not q.empty():        value = q.get(True, 0.05)        a, b = 0, 1        for item in range(value):            a, b = b, a + b            fibo_dict[value] = a        logger.info("consumer [%s] getting value [%d] from queue..." % (current_process().name, value))data_queue = Queue()number_of_cpus = cpu_count()fibo_dict = {}producer = Process(target=producer_task, args=(data_queue, fibo_dict))producer.start()producer.join()consumer_list = []for i in range(number_of_cpus):    consumer = Process(target=consumer_task, args=(data_queue, fibo_dict))    consumer.start()    consumer_list.append(consumer)[consumer.join() for consumer in consumer_list]

  

转载于:https://www.cnblogs.com/aguncn/p/7735469.html

你可能感兴趣的文章
mvc4.0添加EF4.0时发生编译时错误
查看>>
第16月第12天 CABasicAnimation 旋转加速
查看>>
Linux下查看Python安装了哪些脚本模块
查看>>
ERROR- 开发常见error
查看>>
Servlet 中文乱码问题及解决方案剖析
查看>>
OO第四次博客总结
查看>>
集合—ArrayList
查看>>
web前台设计技术
查看>>
Ubuntu14.04 在右键中添加 在终端中打开
查看>>
Eclipse代码规范工具-Checkstyle安装和使用
查看>>
【读书笔记】 nginx 负载均衡测试
查看>>
JQUERY1.9学习笔记 之属性选择器(一) 前缀选择器
查看>>
TortoiseSVN显示图标不正常
查看>>
joj1020
查看>>
javascript模式——Decorator
查看>>
junit测试简单实例
查看>>
迷宫问题,POJ-3984
查看>>
python 文件操作的函数
查看>>
【2017下集美大学软工1412班_助教博客】团队作业3——需求改进&系统设计团队成绩公示...
查看>>
Educational Codeforces Round 26 E - Vasya's Function
查看>>