gpt4 book ai didi

java vs scala - 在单独的线程上读取文件

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:20:55 25 4
gpt4 key购买 nike

我想知道就行业实践而言最好的方法是使用多线程方法读取文件。在 Java 中,我会执行以下操作:

class Reader {  Result readFile(File file, Listener callback) }
class Listener { void process(Result r) }

Reader 会生成另一个线程来生成结果,然后从工作线程中回调 Listener。这是一个好方法吗?这将如何转化为 Scala,它可能有其他更好的机制来实现这一点?

最佳答案

Scala 中的一种方法是使用并行集合。假设您有一系列文件:

files:Seq[File] = ...

可以使用files.par将其变成一个并行集合,然后使用map进行处理。 Map 将在内部使用线程池来并发处理部分序列。使用什么样的线程池可以configured .

files.par.map(readFile).foreach(process)

关于java vs scala - 在单独的线程上读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12788315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com