2017-06-05 77 views

回答

1

使用delaySubscription延遲訂閱到現有的源:

Single.just(1) 
    .delaySubscription(10, TimeUnit.SECONDS) 
    .subscribe(System.out::println); 

如果您init()方法本身有返回單個前副作用,你可以用Single.defer來包裝它,上述結構仍然可以工作:

Single.defer(() -> init()) 
    .delaySubscription(10, TimeUnit.SECONDS) 
    .subscribe(System.out::println); 
0

Observable.timer()是你在找什麼

Observable 
      .timer(10L, TimeUnit.SECONDS) 
      .subscribe(aLong -> init());