进程之间可以传递参数,但数据独立并不共享即一个进程修改了数据,另一个进程中该数据并没有被修改
from multiprocessing import Process
def cProFun(para1, para2, **kwargs):
"""
:param para1:由元组传来的第一个参数
:param para2:由元组传来的第二个参数
:param para3:由字典传来的第三个参数,该参数是一个 关键字参数 判断标准:kwargs={'name': 'bh'}
:return:
定义一个函数,形参定义由实际参数决定。实参在穿件进程时传递。----》定义形参要看构造方法中传参的args与kwags,
参数长度由实参个数决定,实参个数要看args对应元组个数加上1(kwags字典)
"""
print('元组传参,', para1)
# 修改子进程数据
para1.append(2)
# 检测子进程是否成功修改数据
print(para1)
print('元组传参,', para2)
print('字典传参,', kwargs)
import time
def main():
la = [1]
# 穿件子进程
cp1 = Process(target=cProFun, args=(la, [2]), kwargs={'name': 'bh'})
cp1.start()
time.sleep(3)
# 检测主进程中数据是否变化
print('主进程中数据------->', la)
if __name__ == '__main__':
main()