首页 > 解决方案 > Python - 当您不知道需要多少次时如何使用多线程和队列

问题描述

我正在使用 python,我正在使用它来读取文本文件,然后每 x 行处理一次数据。

for line in open('verybigfile.txt'):
    process_data(line)

这是功能

def process_data(line):
        if line == '***RECORD END***':
        x = threading.Thread(target=processList, args=(big_list,))
        x.start()

        print('starting thread')
        return

    big_list.append(line)

我正在努力做到这一点,因此最多可以同时运行 10 个线程。我读过的所有文章和研究都展示了使用队列的多线程示例,当您已经有预定义的工作量需要执行时。

当程序继续添加要执行的作业列表时,有人可以帮我弄清楚如何让 10 个工作人员/线程连续运行吗?

标签: pythonmultithreadingqueue

解决方案


推荐阅读