pytohn 多进程 Process , pool , ProcessPoolExecutor 这三个库有什么区别?

from multiprocessing import Process #多进程
from multiprocessing import pool
from concurrent.futures import ProcessPoolExecutor #进程池

这三个 有什么区别?
from multiprocessing import Process #多进程
from concurrent.futures import ProcessPoolExecutor #进程池
这两个用过了 ,一个是多进程 一个是进程池 ,
from multiprocessing import pool 也是一样的吗?

from multiprocessing import Process #多进程

#python的 多进程和 多线程 使用方法是一样的,
#但是 开辟进程是非常耗费资源的,而且是需要时间的 循环次数少了效果不明显
#开辟进程的时间,取决于CPU, CPU什么时候开始就什么时候执行


def func():
    for i in range(10000):
        print("子进程", i)


if __name__ == '__main__':
    p = Process(target=func)
    p.start()
    for i in range(10000):
        print("主进程", i)

from concurrent.futures import ProcessPoolExecutor #进程池
#进程池
def fn(name):
    for i in range(1000):
        print(name,i)

if __name__=='__main__':
    #创建进程池
    with ProcessPoolExecutor(15) as t: #开15个进程
        for i in range(10):
            t.submit(fn, name=f"进程{i}")
    #等待进程池中的任务全部执行完毕,才继续执行(守护)
    print("全部完成")

打个比方吧process就是手动挡开车
pool和processpoolexecutor就是自动挡开车不用操心细节