多进程模块:multiprocessing
Posted pzk7788
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多进程模块:multiprocessing相关的知识,希望对你有一定的参考价值。
多进程:
(1) 前面我们学习的多线程,其实算不上真正的多线程,即使你开了很多个线程,在同一时间内只能有一个CPU核数来处理一个线程
(2) 在 python 中,多进程算得上是真正的多线程,假设你的CPU有四核,如果开四个子进程,四个CPU核数会同时处理这四个子进程
(3) 在 threading 中,我们是通过 threading.Thread(target=function, args=(....)) 来创建一个对象,然后再通过对象的 start() 方法来运行一个子线程,多个子线程可以并发执行
(4) 在 multiprocessing 中,我们是通过 multiprocessing.Process(target=function, args=(....)) 来创建一个对象,然后再通过对象的 start() 方法来运行一个子进程,多个子进程可以并发执行
#!/usr/bin/env python #-*- coding:utf-8 -*- import os import time import multiprocessing def fun(): print ‘hello world‘, os.getpid(), os.getppid() time.sleep(1) for i in range(10): p = multiprocessing.Process(target=fun, args=()) p.start()
[[email protected] ~]$ python 1.py hello world 4056 4055 hello world 4057 4055 hello world 4058 4055 hello world 4059 4055 hello world 4060 4055 hello world 4061 4055 hello world 4062 4055 hello world 4063 4055 hello world 4064 4055 hello world 4065 4055
以上是关于多进程模块:multiprocessing的主要内容,如果未能解决你的问题,请参考以下文章
python 3 编程之多进程 multiprocessing模块