概念:让两个函数或方法同时执行,充分理由CPU资源,提高程序的执行效率 进程是实现多任务的一种方式(线程是另一种)
方式:并行、并发、 并行: 同一时间运行(多核CPU下) 并发: 在一段时间内交替执行任务(单核CPU的情况下)
一个程序中最少有一个进行,而进程默认有一个线程。线程依附在进程里。
包:multiprocessing (https://docs.python.org/zh-cn/3.8/library/multiprocessing.html 详解)
Process类 (https://docs.python.org/zh-cn/3.8/library/multiprocessing.html#multiprocessing.Process 详解)
基本:multiprocessing.Process(group=None,target=None,name=None,args=(),kwargs=(),* ,daemon=None)
解释:group:它始终为None.目前,不为None则会报错(但未来可能会发生变化)。目前用于兼容threading.Tread
第二个参数:target 它指向进程活动的方法(简单来说就是方法)。它默认为None
用两个参数实现个简单的多线程代码调用 原因参考:http://www.manongjc.com/article/60188.html
第三个参数:name 它更像一个别名 用于鉴别 如果不写 它则会构造成''Process-N1:N2:...:Nk'
第四个参数:args 它表示元组的方式给执行任务传参
第五个参数:kwargs 它表示字典的方式给执行任务传参
第六个参数:daemon 是3.3版新加入的 它是一个守护标记,一个布尔值 当程序退出时,它会尝试终止其守护进程子进程。。所以 一般都是默认False(参考:https://www.cnblogs.com/7dao/p/14040431.html)
interval:作用产生间隔
补充:multiprocessing.current_process()是获取进程名称