第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

RxJava怎么定時(shí)依次發(fā)送集合的每個(gè)元素?

RxJava怎么定時(shí)依次發(fā)送集合的每個(gè)元素?

九州編程 2019-05-24 16:03:25
我有一個(gè)集合,其中包含了若干Message對象。我想通過RxJava從集合中每隔一秒依次發(fā)送集合中的對象我一開始的時(shí)候想這樣操作,發(fā)現(xiàn)一次也不發(fā)送對象FlowablemessageFlowable=Flowable.fromIterable(mock.messages);FlowabletimeFlowable=Flowable.interval(1,TimeUnit.SECONDS);Flowableflowable=Flowable.zip(messageFlowable,timeFlowable,newBiFunction(){@OverridepublicStringapply(Messagemessage,LongaLong)throwsException{returnmessage.content;}});flowable.subscribe(/*....*/)后來我就想用這種方式Flowable.fromIterable(mock.messages).map(message->message.content).delay(1,TimeUnit.SECONDS).subscribe(s->Timber.d("s=%s",s));但是發(fā)現(xiàn)集合一瞬間就被發(fā)送完了。并沒有被延時(shí)。有什么辦法可以延時(shí)發(fā)送集合嗎?delay(1s)delay(1s)delay(1s)0----------->1----------->2----------->3...
查看完整描述

2 回答

?
侃侃無極

TA貢獻(xiàn)2051條經(jīng)驗(yàn) 獲得超10個(gè)贊

RxJava我沒用過,但我用過RxJS,大體思想應(yīng)該一下你應(yīng)該這樣先起一個(gè)定時(shí)器的流,然后每個(gè)流都去接上新的流。因?yàn)閕nterval的時(shí)間不保準(zhǔn),所以用flatMap使用流上所有的數(shù)據(jù)。具體的API可能不一樣,但是大致是這個(gè)思想吧。
Flowable.interval(1,TimeUnit.SECONDS).flatMap(()=>returnmessageFlowable);
                            
查看完整回答
反對 回復(fù) 2019-05-24
  • 2 回答
  • 0 關(guān)注
  • 1281 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號