2015-08-05 8 views
1

у меня есть что-то вроде этого:RxJava Таймер Наблюдаемые но ждать, чтобы завершить

return Observable.timer(2, TimeUnit.SECONDS) 
       .flatMap(integer -> captureList.getLatestCaptureCut()) #1 
       .flatMap(vp::processVideo) #2 
       .observeOn(AndroidSchedulers.mainThread())  
       .repeat() 
       .subscribeOn(Schedulers.computation()) 
       .subscribe(new Subscriber<Boolean>() { 
        @Override 
        public void onCompleted() { 
        } 

        @Override 
        public void onNext(Boolean aBoolean) { 
        } 

        @Override 
        public void onError(Throwable e) { 
         e.printStackTrace(); 
        } 
       }); 

В основном то, что я хочу следующее:

  • мне нужно наблюдаемым начать, сначала после 10 секунд, а затем
    • он делает # 1 по завершении затем
    • он делает # 2 по завершении затем
    • подождите 2 секунды и повторите все, но первые 10 ждут и должны бежать вечно.

Я не могу найти способ, чтобы это работало. Он просто повторяет процесс каждые 2 секунды, не дожидаясь, когда onNext будет вызван. Должно быть, это так?

+0

Это трудно понять, что вы после этого. Вы хотите: приостановить 10 секунд, запустить 1, запустить 2, подождать 2 секунды, повторить? – Will

+0

есть. повторять все, кроме первой паузы –

ответ

Смежные вопросы