"""简单例子"""
import time
import os
import multiprocessing
def demo():
print("Process start.")
time.sleep(1)
print(os.getpid(), os.getppid()) # 子进程和父进程的pid
print("Process end.")
if __name__ == '__main__':
p = multiprocessing.Process(target=demo) # 创建一个进程,此进程执行demo()函数
p.start() # 开始执行进程
"""带参数的进程"""
import time
import os
import multiprocessing
def demo(num):
print("Process " + str(num) + " start.")
time.sleep(1)
print(os.getpid(), os.getppid(), num) # 子进程和父进程的pid
print("Process " + str(num) + " end.\n")
if __name__ == '__main__':
p_list = [] # 进程列表
for i in range(5):
p = multiprocessing.Process(target=demo, args=(i,)) # 进程执行带参数的函数
p.start()
p_list.append(p)
# for循环内添加join() 线程会按照顺序执行
print("Start join.")
for p in p_list:
p.join() # join的时候才会真正的开始执行
print("Main end.")