一:原理
该模式下,主进程的参数要通过传参,才可把主进程的参数传入子进程中,子进程拷贝主进程的参数进行使用,不改变主进程参数
import multiprocessing
def task(name):
print(name)
if __name__ == '__main__':
multiprocessing.set_start_method("spawn")
name = []
#通过传参可以把主进程的参数,传入到子进程中
#子进程对参数进行拷贝,使用在子进程中
p1 = multiprocessing.Process(target=task,args = (name,))
p1.start()
image.png
对主线程和子线程参数的理解
import multiprocessing
import time
def task(data):
data.append(999)
print("子线程结果:",data)
if __name__ == '__main__':
multiprocessing.set_start_method("spawn")
name = []
#通过传参可以把主进程的参数,传入到子进程中
#子进程对参数进行拷贝,使用在子进程中
p1 = multiprocessing.Process(target=task,args = (name,))
p1.start()
time.sleep(2)
print("主线程结果:",name)
image.png
网友评论