python3 线程比进程的开销小

线程比进程的开销小

import time
from multiprocessing import Process
from threading import Thread


def func(name):
    print(f"我是{name}")


if __name__ == '__main__':
    start_time = time.time()
    p = Process(target=func, args=("子进程",))  # 创建一个子进程
    p.start()  # 开启子进程
    p.join()  # 等待子进程结束
    print("子进程结束时间:", time.time() - start_time)  

    start_time = time.time()
    t = Thread(target=func, args=("子线程",))  # 创建一个字线程
    t.start()  # 开启子线程
    t.join()  # 等待子线程结束
    print("子线程结束时间:", time.time() - start_time)

执行结果:

我是子进程
子进程结束时间: 0.19001102447509766
我是子线程
子线程结束时间: 0.0010001659393310547

通过上面的结果,可以看出线程比进程的开销小很多。

能使用线程的尽量使用线程。

到底什么时候需要用到多进程,什么时候要用多线程

程序中具有非常多的逻辑计算的时候,选择多进程,当程序中存在大量的IO操作的时候,选择多线程。

posted on 2019-06-14 19:52  lilyxiaoyy  阅读(563)  评论(0编辑  收藏  举报

返回
顶部