python 多线程和多进程的区别 mutiprocessing theading
2017-11-08 · 百度知道合伙人官方认证企业
首先你要搞清楚进程和线程的关系:线程是最小的执行单元,而进程由至少一个线程组成。
multiprocessing模块是一个跨平台版本的多进程模块。该模块提供了process类来代表一个进程对象。
Process
构造方法__init__(self, group=None, target=None, name=None, args=(), kwargs={})
参数说明:
group:进程所属组。基本不用
target:表示调用对象或方法名称。
args:表示调用对象的位置参数元组。
name:别名
kwargs:表示调用对象的字典。
示例代码如下:
threading本身就可以创建多个线程:
hreads = []#定义一个线程池
t1 = threading.Thread(target=one,args=(,))#建立一个线程并且赋给t1,这个线程指定调用方法one,并且不带参数
threads.append(t1)#把t1线程装到threads线程池里
t2 = threading.Thread(target=two)
threads.append(t2)
t3 = threading.Thread(target=three)
threads.append(t3)
这时threads这个列表中就有三个线程装在里面了。
下面就是运行这个线程池里面的线程
for t in threads:
用一个for语句遍历threads里的线程,然后调用start()方法运行
注意t.join()必须放在for语句外面。