python多线程控制数量_限制python中的线程数量

博主有一个Python脚本,通过多线程触发到不同路由器的并行telnet连接,路由器列表从CSV文件获取。当前线程数量由CSV文件行数决定,若限制线程最大数量,如限制为10,而文件有15行,博主不知如何处理剩余5行,希望在前面线程完成后让剩余任务得到服务。

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

我有一个python脚本,可以触发多个到不同路由器的并行telnet连接来执行某些操作。效果很好。路由器列表在CSV文件中传递给python。在

另一方面,为了触发并行telnet连接,我使用线程。我的代码是这样开始的:oFile = csv.reader(open(FileCsv,"r"), delimiter=",", quotechar="|")

routers = list(oFile)

[. . .]

for i in range(len(routers)):

# We generate the config file

ip = routers[i][0]

CliLine=write_cliLine(routers[i])

# running routine

t = MiThread(i,CliLine,ip)

# wait random number of seconds between threads (0sec to 5sec)

time.sleep(random.randint(0,5))

t.start()

今天,线程的数量由CSV文件(for i in range(len(routers)))内的行数给出。我知道我可以通过限制for循环(for i in range(10))来限制线程的最大数量。我的问题是:假设我将线程数量限制为10,并且我的CSV文件中有15行,那么前10行肯定会被服务。我怎样才能把其他5个放在一边呢?一旦前10个路由器(线程)中的任何一个都完成了,我如何才能让这5行在以后得到服务?在

提前谢谢!在

卢卡斯

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值