Python之Pool

#!/usr/bin/env python

from multiprocessing import Pool

import time

def sayHi(a):

time.sleep(5)

return a**a

if __name__ =="__main__":

p=Pool(processes=5)

result=p.apply_async(sayHi,[10])

print result.get()

一个池子启用5个线程池,且异步一次返回结果

可以用for循环使用多次异步:

#!/usr/bin/env python

from multiprocessing import Pool

import time

def sayHi(a):

time.sleep(5)

return a**a

p=Pool(processes=5)

result_list=[]

for i in range(100):

result_list.append(p.apply_async(sayHi,[i]))

for j in result_list:

print j.get()

时间: 2024-08-27 21:26:30

Python之Pool的相关文章

python并发

并发方式 线程(Thread) 多线程几乎是每一个程序猿在使用每一种语言时都会首先想到用于解决并发的工具(JS程序员请回避),使用多线程可以有效的利用CPU资源(Python例外).然而多线程所带来的程序的复杂度也不可避免,尤其是对竞争资源的同步问题. 然而在python中由于使用了全局解释锁(GIL)的原因,代码并不能同时在多核上并发的运行,也就是说,Python的多线程不能并发,很多人会发现使用多线程来改进自己的Python代码后,程序的运行效率却下降了,这是多么蛋疼的一件事呀!如果想了解更

使用Python进行并发编程

让计算机程序并发的运行是一个经常被讨论的话题,今天我想讨论一下Python下的各种并发方式. 并发方式 线程(Thread) 多线程几乎是每一个程序猿在使用每一种语言时都会首先想到用于解决并发的工具(JS程序员请回避),使用多线程可以有效的利用CPU资源(Python例外).然而多线程所带来的程序的复杂度也不可避免,尤其是对竞争资源的同步问题. 然而在python中由于使用了全局解释锁(GIL)的原因,代码并不能同时在多核上并发的运行,也就是说,Python的多线程不能并发,很多人会发现使用多线

Python之旅.第九章.并发编程。

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; line-height: 15.0px; font: 13.0px "PingFang SC"; color: #000066; background-color: #ffffff } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; line-height: 15.0px; font: 13.0px Courier; color: #000066; background-co

4月28日 python学习总结 线程与协程

一. 异步与回调机制 问题: 1.任务的返回值不能得到及时的处理,必须等到所有任务都运行完毕才能统一进行处理 2.解析的过程是串行执行的,如果解析一次需要花费2s,解析9次则需要花费18s 解决一: (线程实现异步,回调解析结果) from concurrent.futures import ProcessPoolExecutor,ThreadPoolExecutor from threading import current_thread import requests import os i

python 之 并发编程(进程池与线程池、同步异步阻塞非阻塞、线程queue)

9.11 进程池与线程池 池子使用来限制并发的任务数目,限制我们的计算机在一个自己可承受的范围内去并发地执行任务 池子内什么时候装进程:并发的任务属于计算密集型 池子内什么时候装线程:并发的任务属于IO密集型 进程池: from concurrent.futures import ProcessPoolExecutor,ThreadPoolExecutor import time,os,random ? def task(x): print('%s 接客' %os.getpid()) time.

C++ Development Library

C/C++ 开发库 | C/C++ Development Library 这里收集一些著名的 C/C++ 开发库.SDK.类库.可复用类与结构代码 等信息,列举它们的介绍.参考和网站链接,为各位 C/C++ 程序员和爱好者提供检索和查阅类库的方便 下面收集的 C/C++ 类库介绍整理来源于文章:C++ 资源之不完全导引(作者:曾毅.陶文),这篇文章曾发表于 2004 年 5 月<CSDN 开发高手> 上文中介绍的类库有些已经多年未见发布和网站内容的更新了,特别是一些开源的项目.我检查了作者提

C++库汇总

C++库汇总 C++类库介绍再次体现了C++保持核心语言的效率同时大力发展应用库的发展趋势!!在C++中,库的地位是非常高的.C++之父 Bjarne Stroustrup先生多次表示了设计库来扩充功能要好过设计更多的语法的言论.现实中,C++的库门类繁多,解决的问题也是极其广泛,库从轻量级到重量级的都有.不少都是让人眼界大开,亦或是望而生叹的思维杰作.由于库的数量非常庞大,而且限于笔者水平,其中很多并不了解.所以文中所提的一些库都是比较著名的大型库. 标准库 1.Dinkumware C++

C/C++ Resources

一.C/C++相关资源 语言标准及文档● ISO C99http://www.open-std.org/JTC1/SC22/WG14/www/docs/n1124.pdf● ANSI C Rationalehttp://www.quut.com/c/rat/title.html FAQ (常见问题)● comp.lang.c FAQhttp://c-faq.com/● C-FAQ 中文版http://c-faq-chn.sourceforge.net/ccfaq/node1.html 学习资料●

C++资源之不完全导引

C++资源之不完全导引  撰文/ 曾毅 陶文 最后更新:2004年6月11日 声明: .本文2004年5月首发于<CSDN开发高手>,版权归该杂志与<程序员>杂志社所有.杂志限于篇幅部分内容有所删节,此处版本为相对完整版本. .本文为介绍性文章,会随笔者学习C++语言不断更新. 前言 无数次听到“我要开始学习C++!”的呐喊,无数次听到“C++太复杂了,我真的学不会”的无奈.Stan Lippman先生曾在<C++ Primer>一书中指出“C++是最为难学的高级程序设