【发布时间】:2011-12-28 21:40:21
【问题描述】:
我目前编写的程序使用 32 个线程并每个线程读取 1 个文件(因此 32 个 .txt 文件)。多线程与 CPU 速度无关,但是每秒对 BING 的 api 进行 32 次调用比进行 1 次要快得多。每个 .txt 文件都包含一个搜索查询列表。我创建了一个线程,它一次从文件中读取一行。是否可以创建所有 32 个线程并将它们指向单个 .txt 文件?
【问题讨论】:
-
我正在解析大文本文件,我通常这样做:一个生产者正在执行 I/O 并将其放入队列中,然后尽可能多的消费者从队列中获取作业。在您的情况下,您的唯一生产者可以读取 txt 文件并将每行一个条目放入队列中。
标签: java multithreading