PYTHON线程池使用

这篇博客介绍了如何使用Python的线程池(ThreadPoolExecutor)来解决程序中单线程执行速度慢的问题。通过创建线程池并设置最大工作线程数,可以并发执行任务,从而提高程序运行效率。示例代码展示了如何提交任务到线程池并等待所有任务完成,最终实现多线程并行处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python 编程过程中,可能会遇到一些较为专一的处理方法,该方法没有过多的耦合,输入简单,但是但进程单线程的情况下执行速度慢,称为程序运行的痛点。
线程池的使用,可以很好的为我们解决这一痛点。
下面代码简单演示一下:

import time,datetime
from concurrent.futures import ThreadPoolExecutor


def test(arg_1,arg_2):
    print (datetime.datetime.now(),arg_1,arg_2)
    time.sleep(1)
    return arg_1

if __name__=='__main__':
#max指定同时运行的最大线程数
    th_pool = ThreadPoolExecutor(max_workers=3,thread_name_prefix='test')
    list_all =[]
    for i in range(10):
    #往线程池中提交需要执行的方法 sumbit(方法名,方法的参数)
        fature = th_pool.submit(test,i,i+1000)
        
    th_pool.shutdown()

运行结果如下

C:\Users\lenovo\AppData\Local\Programs\Python\Python37\python.exe D:/PYTHON_CODE/My_django_Demo/blog/my_threadpool.py
2020-12-08 17:06:54.007107 0 1000
2020-12-08 17:06:54.008106 1 1001
2020-12-08 17:06:54.008106 2 1002
2020-12-08 17:06:55.008955 3 1003
2020-12-08 17:06:55.008955 4 1004
2020-12-08 17:06:55.008955 5 1005
2020-12-08 17:06:56.009675 6 1006
2020-12-08 17:06:56.009675 7 1007
2020-12-08 17:06:56.009675 8 1008
2020-12-08 17:06:57.010604 9 1009

可以看出max_workers设置 每次同时运行最多三个线程

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值