【问题标题】:Process java.util.stream.Stream from multiple threads从多个线程处理 java.util.stream.Stream
【发布时间】:2019-09-09 07:40:18
【问题描述】:

在 Java 中是否有一种方法可以并行生成 Stream 并在另一个 Thread 中使用它? 尚未找到任何多线程保证。

【问题讨论】:

  • 不,Stream 对此的抽象是错误的。你应该看看 RxJava。
  • 您可以创建一个BlockingQueue 来写入并从中创建一个Stream
  • @marstran 我不相信这些要求需要引入 Rx。在不知道更多的情况下,并发队列听起来应该是首选。
  • 流并不是真正“产生”的,尽管它们的内容可能会被生成。因此,不需要将内容“生成”到流中的线程。是消费者线程导致从后备存储/等生成/读取新数据。

标签: java multithreading java-stream


【解决方案1】:

不,java.util.stream.Stream 不是您要寻找的抽象。

你描述的都是java.util.concurrent.BlockingQueue实现的(见javadoc

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-27
    • 2018-06-03
    • 1970-01-01
    • 2017-04-12
    • 1970-01-01
    • 2012-03-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多