Python之创建low版的线程池

本文介绍了一个简单的线程池实现方法,通过Python的threading模块创建固定数量的线程,并利用队列来管理和调度这些线程。文章通过具体代码展示了如何创建线程池对象并分配任务。

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

#!/user/bin/evn python
# -*- coding:utf-8 -*-
import threading,time
import queue
#创建线程池类
class ThreadPool(object):
    def __init__(self,max_num=20):
        #创建队列
        self.queue=queue.Queue(max_num)
        for i in range(max_num):
            #往队列里面依次放入20个线程类名(threading.Thread)
            self.queue.put(threading.Thread)
    
     #获取线程的方法       
    def get_thread(self):
        #从队列里面依次取出线程名
        return self.queue.get()
    #添加线程名到队列里面
    def add_thread(self):
        self.queue.put(threading.Thread)

def func(p,i):
    time.sleep(1)
    print(i)
    p.add_thread()

#创建线程池对象
p=ThreadPool()

for i in range(100):
    ret=p.get_thread()#获取线程类名
    t=ret(target=func,args=(p,i,))#创建线程对象
    t.start()#线程开始执行

 

转载于:https://www.cnblogs.com/wangbinbin/p/7475788.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值