我需要将随机生成器编写为可观察的。Observer 会用下一个值长时间做一些事情。所以我想只在观察者需要时才发出新的随机数,或者可能有两个额外的数字,但不能更多。
怎么做?
PS 如果重要的话,我使用 Java。
只要消费者有需求,您就可以使用fromCallablewithrepeat来获取新值。
例如:
Random random = new Random();
Observable.fromCallable(() -> random.nextDouble())
.repeat()
.map(rnd -> {
// do something with the random number
return rnd * 2;
}
.take(50)
.subscribe(System.out::println);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1210 次 |
| 最近记录: |