Python多线程与多进程的简易实现 环球热资讯
哔哩哔哩 2023-03-09 19:56:59


(资料图片)

1 问题背景

近期需要提升代码运行效率,想通过多线程或多进程实现。

一般来说,单进程程序运行起来会作为一个进程占用CPU资源,而一个进程可以包含1或多个线程。在多CPU核的机器上,线程之间可以并行执行,通过该方式可以提高代码运行效率。

NOTE:Python虽然可以通过threading库实现多线程,但由于全局解释器锁(GIL)的存在,一个时刻只能有1个线程执行,并不是真正的多线程;在一些情况下,例如跑不满一个核,由于线程之间还有通信成本,多线程python程序时间效率上并不一定优于单线程python程序;

最后,通过本次优化调用48个核,成功把代码运行效率提升了10倍,效果显著

2 实现方法

2.1 Python 多线程实现:

2.2 Python 多进程实现:

2023年03月09日

PCon