python多进程与多线程学习总结
来源:互联网 发布:哔哩哔哩录屏软件 编辑:程序博客网 时间:2024/05/21 15:39
参考:http://www.cnblogs.com/virusolf/p/5458325.html
最近项目中用到了多进程和多线程的知识,花费了比较多的时间,在此进行总结,方便之后查阅。
经过查阅资料,知道,多进程指的是真正的并行运行,即各个进程之间互不干扰,我们通常所提到的多核就与多进程有关。而多线程就具有一定的局限性,多线程共享同一份资源,并不是真正意义上的并行运行,而是每个线程运行一小会,交替运行,这样给我们的感觉就像是并行运行一样。
对于多进程,要了解Pool这个概念,就是进程池,在这个进程池里,可以包含多个进程,不过这个最大数量是受到限制的。可以在使用之前确定最大进程数:
p =
Pool(processes=4)
在进程中调用函数:
p.apply_async(sayHi,args=(m,))
要在进程中对某个数值进行修改,可以使用列表List,或者队列Queue,List可以随意存取,Queue遵循先进先出的原则,所以存取比较麻烦。
我在具体的应用中用到的是list,注意这块需要用到的是Manager这个函数,如果没有使用的话可能不会修改具体的数值。
具体使用方法:
From multiprocessing import Manager
manager = Manager()
l1 = manager.list()
p.apply_async(start_read,args=(l1,))//注意这块还有个逗号
time.sleep(0.5)
p.close()
p.join
由于我的start_read函数是一个死循环,因此需要强制停止:
p.terminate()
如果需要通过进程函数来修改列表的值,注意将列表作为参数传入到函数中,进行修改。
目前接触的就这么多,后续再进行补充。
- python多进程与多线程学习总结
- python 多进程并发与多线程并发总结
- python 多进程并发与多线程并发总结
- Python多线程与多进程
- Python多线程与多进程
- 多进程与多线程总结
- 【Python】Python中的多线程与多进程
- python多线程与进程
- Python 多进程/多线程 学习笔记
- Python的多线程与多进程实践
- Python中的多进程与多线程
- python 多进程开发与多线程开发
- python中的多线程与多进程
- python多进程与多线程比较
- 3.python学习笔记:python下的多进程与多线程(一)
- python多线程学习总结
- 多线程与多进程编程学习整理
- python 多线程多进程
- 浅谈jQuery源码(四)——$.grep
- Linux学习之第十五章虚拟机
- 机器学习练习二:多元线性回归
- Codeforces Round #277.5(Div. 2) B. BerSU Ball【二分匹配】
- HDU1004暴力求解
- python多进程与多线程学习总结
- memset函数的作用和用法
- Android中三种像素单位的区别
- Android学习(0)
- 为coder写的UUID小知识
- Unity实现UI渐变效果(UGUI)
- hibernate教程--一级缓存详解
- tensorflow安装时遇到的问题
- leetcode:338. Counting Bits