一、进程
- 创建进程:
a = Process(target=hello)# target指向多进程的函数(即这个函数在另一个进程运行)
- 普通运行:
a.run()# 此种方式并没有启用新的进程,而是普通调用
- 多进程运行:
a.start()# 开始多进程运行
- 强制关闭:
a.terminate()# 强制终止a进程(一般在默认情况下函数执行完毕进程就会自动结束)
- 进程等待:
a.join()# 进程等待,在默认情况下,主进程结束后会等待子进程运行,所有子进程结束后,程序运行结束(使用该函数,主进程会等待a子进程先运行结束然后再往下面执行)
示例:
解释:在默认情况下,主进程结束后会等待子进程运行,所有子进程结束后,程序运行结束
import time
from multiprocessing import Process
# 这是a进程运行的函数,它是主进程的子进程
def hello():
while 1:
print(1)
time.sleep(3)
# 这是b进程运行的函数,它是主进程的子进程
def nohello():
while 1:
print(2)
time.sleep(3)
# 这就是主进程
if __name__ == '__main__':
a = Process(target=hello)
a.run()
b = Process(target=nohello)
b.run()