2017-06-05 75 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());