久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

Android兩種輪詢的實現(xiàn)方法

瀏覽:3日期:2022-09-23 14:55:43

Android 兩種輪詢的簡單寫法,供大家參考,具體內(nèi)容如下

public void startPolling() { subscriber = Observable.interval(0, POLLING_INTERVAL, TimeUnit.MILLISECONDS). doOnNext(new Action1<Long>() { @Override public void call(Long aLong) { doPolling(). subscribeOn(Schedulers.io()). observeOn(AndroidSchedulers.mainThread()). subscribe(new Subscriber<String>() {@Overridepublic void onCompleted() {}@Overridepublic void onError(Throwable e) { Log.d(TAG, 'onError');}@Overridepublic void onNext(String response) { handleResponse(response);} }); } }).subscribe();}public void stopPolling() { if (!subscriber.isUnsubscribed()) { subscriber.unsubscribe(); }}private Observable<Param> doPolling() { return Observable.create(new Observable.OnSubscribe<Param>() { @Override public void call(Subscriber<? super Param> subscriber) { //do work subscriber.onNext(response); subscriber.onCompleted(); } });}

在Activity的生命周期里分別調用start和stop方法,解除輪詢綁定,避免內(nèi)存泄漏。

其它簡單的輪詢方法還有利用handler的postDelay機制實現(xiàn)

@Overridepublic void handleMsg(Message msg) { switch (msg.what) { case MSG_POLLING: doPolling(false); break; ... ... }}private void doPolling(Boolean isFirst) { if(isFirst) { mHandler.removeMessages(MSG_POLLING); mHandler.sendEmptyMessageDelayed(MSG_POLLING, POLLING_INTERVAL); return; } doWork(); //asyn network mHandler.sendEmptyMessageDelayed(MSG_POLLING, POLLING_INTERVAL);}

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標簽: Android
相關文章:
主站蜘蛛池模板: 中文字幕在线三区 | 一区二区三区视频免费在线观看 | 国产一区二区精品久久 | www.伊人.com| 日韩成人在线视频 | 成人精品一区二区三区中文字幕 | 午夜免费视频网站 | 嫩草视频在线播放 | 黄色片网站在线看 | 国产丝袜一区二区三区免费视频 | 在线第一页 | 欧美日本一区二区三区 | 国产网址在线 | 中文字幕天堂在线 | 亚洲欧美综合乱码精品成人网 | 求av网站 | 天天天操操操 | 国产精品久久久久久久久久99 | 国产精品久久久久久久久久久久久 | 日韩免费 | 欧美视频亚洲视频 | 国产中文字幕在线观看 | 国产精品有限公司 | a级在线观看免费 | 亚洲电影一区二区三区 | 精品无人乱码一区二区三区 | 国产精品成人久久久久 | 国产欧美在线观看 | 欧美视频区| 国产精品久久久久久久久久妞妞 | 亚洲国产精品网站 | 亚洲www.| 精品少妇一区二区三区日产乱码 | 国产福利91精品 | 久久久精品欧美一区二区免费 | 四虎影院免费看 | 久久国产精品亚洲 | 99精品久久久 | 黄色资源网站 | 国产一区二区三区在线视频 | 天天久久|