1.创建方法:
os.fork()#Unix/Linux
multiprocessing.Process(target = "子进程执行的方法",agrs = (方法所需参数))#跨平台
eg:
import multiprocessing
import os
import time
def run_proc():
time.sleep(5)
print("子进程(%s)正在运行"% os.getpid())
if __name__ == "__main__":
print("父进程进程号为:%s"% os.getpid())
p = multiprocessing.Process(target = run_proc)
print("即将创建子进程")
p.start()
p.join()
print("子进程执行完毕")
2.进程池:
p = multiprocessing.Pool(processse = x)#设置同时存在的最大进程数
p.apply_async()#添加进程
3.进程间通信
Queue: #多进程通信
q = Queue()
q.put()#添加信息
q.get()#读取信息
Pipe:
若duplex参数为True 则为全双工模式,否则为半双工
全双工:Pipe[i].send()#添加信息,pipe[i].recv()接收信息
半双工:pipe[0]读取信息,pipe[1]添加信息