多任务的执行:
- 并发:在一段时间内交替执行
- 并行:同时执行,真正意义上的同时
在python里实现多任务 使用进程
来实现,进程是实现多任务的一种方式
- 进程:一个正在执行的软件或程序,是os进行资源分配和调度运行的基本单位。指分配资源,不会真的执行,真正执行的是线程
- 线程:每个进程下一定有一个主线程,来执行代码
一个进程就好像一个公司,不同公司提供不同的资源,干活的是员工,也就是线程
import multiprocessing
import time
def dance():
for i in range(5):
print('dancing')
time.sleep(0.2)
def sing():
for i in range(5):
print('singing')
time.sleep(0.2)
if __name__=='__main__':
# 创建子进程对象 target:指定执行目标任务 name:进程名,不设置就是Process-1,group:进程组,目前不需要
dance_process = multiprocessing.Process(target = dance)
sing_process = multiprocessing.Process(target = sing)
# 启动
dance_process.start()
sing_process.start()
进程执行带有参数的任务
- args:以元组方式进行传参,只有一个的时候需要多加一个’,'不然会被说int不可以循环
- kwargs:以字典方式进行传惨
import multiprocessing
import time
def dance(num):
for i in range(num):
print('dancing'