【发布时间】:2015-11-24 21:20:54
【问题描述】:
我有一个Observable<String>。我想把它变成一个Map<String, Int>,它告诉我每个不同字符串的出现次数。
observable 包含约 10 亿个元素,其中 1000 个是不同的(因此,不能将整个数据集存储在 RAM 中)。目前我遍历Observable 并更新HashMap。我还确保在同一个线程上观察以避免竞争条件。但是,获取元素频率本质上应该很容易并行化,因此最好利用它。
有没有办法做到这一点?
【问题讨论】:
-
由于数据源是顺序的,并且更新操作 O(1),我不确定你是否会通过并行获得多少。
-
@akarnokd 数据源是在多个线程上计算的,使用我当前的方法我必须同步这会减慢速度。
标签: java scala reactive-programming rx-java reactivex