最方便建立进程池,线程池的方法
建立进程池,线程池:
进程池
from concurrent.futures import ThreadPoolExecutor,ProcessPoolExecutor import time,random,os def task(n): print('%s is running'%os.getpid()) time.sleep(5) return n**2 if __name__ == '__main__': p = ProcessPoolExecutor() l=[] start=time.time() for i in range(20): obj=p.submit(task,i) l.append(obj) p.shutdown() print([obj.result()for obj in l]) print(time.time()-start)
线程池
from concurrent.futures import ThreadPoolExecutor,ProcessPoolExecutor import time,random,os def task(n): print('%s is running'%os.getpid()) time.sleep(5) return n**2 if __name__ == '__main__': p = ThreadPoolExecutor() l=[] start=time.time() for i in range(20): obj=p.submit(task,i) l.append(obj) p.shutdown() print([obj.result()for obj in l]) print(time.time()-start)
在这里我要声明一下,多进程,以及多线程,进程池,线程池:
多进程,简单来来讲就是好多个进程在做事,当进行I/O操作的是时候,一个进程去做这件事,其他进程就只能等着,只有这个进程做完了,其他进程才能去做,就和上厕所是一样,一个人上厕所,其他人都得等着,在这里又出现一个进程池,所谓的进程池就是用来规范多进程的,不理解吧,(这样多进程用于计算的时候,比如说你有好多的进程2000000个,这么多都在计算是不是很可怕,这里添加一个进程池约束一下是不是就完美了,里面的计算完了,外面的再进来计算)
多线程,怎么讲呢,就是在一个进程里面,所以这个进程里面的资源对于线程来说就是共享的啦,多线程常用于I/O操作,
洋洋人生如戏一场,芸芸众生各属一角。此戏说长便长,论时百年;说长便短,稍纵即逝。生命沧海一粟,在万物中脆弱瞬间即逝为最,随风而来,随风为土,虽说百年,亦不过宇宙间流星划过夜空,一闪而过,无迹无痕,虽曾有闪烁,但即刻消失的无影无踪。无论此戏是悲是喜。
人生轻松无极限,生活快乐遂心愿,活的好过的开心,心态代表一个人的精神状态,只要有良好的心态,你才能每天保持饱满的心情。心态好,运气就好。精神打起来,好运自然来。记住做任何事情一定要有积极的心态,一旦失去他,就跳出去,要学会调整心态, 有良好的心态工作。
人生过的是心情,生活活的是心态,人生随其然,生活何其烦,累了就睡觉,醒了就微笑,走过一些路,才知道辛苦;登过一些山,才知道艰难;趟过一些河,才知道跋涉;跨过一些坎,才知道超越;经过一些事,才知道经验;阅过一些人,才知道历练;读过一些书,才知道财富。