美文网首页
RxJava 定时执行

RxJava 定时执行

作者: 不会弹钢琴de大叔 | 来源:发表于2024-01-25 13:57 被阅读0次

    依赖引入

        implementation 'io.reactivex.rxjava2:rxjava:2.2.19'
        implementation 'io.reactivex.rxjava2:rxandroid:2.1.1'
    

    1 等待2s后执行任务

    Observable.timer(2 * 1000, TimeUnit.MILLISECONDS)
                        .observeOn(AndroidSchedulers.mainThread())
                        .subscribeOn(Schedulers.io())
                        .subscribe(s -> getCode());
    

    2 间隔1s轮询执行任务

    private Disposable mDisposable;
    
        /**
         * 开启循环任务
         * 0 开始延时时间 1000 每次间隔执行时间
         */
        private void timeLoop() {
            mDisposable = Observable.interval(0, 1000, TimeUnit.MILLISECONDS)
                    .map((mTimer -> mTimer + 1))
                    .subscribeOn(Schedulers.io())
                    .observeOn(AndroidSchedulers.mainThread())
                    .subscribe(mTimer -> {
                        Log.wtf("ZHJ++", "zhj~ timeLoop: " + mTimer);
                    });
        }
    
        /**
         * 关闭定时任务
         */
        private void stopLoop() {
            if (mDisposable != null) {
                mDisposable.dispose();
            }
        }

    相关文章

      网友评论

          本文标题:RxJava 定时执行

          本文链接:https://www.haomeiwen.com/subject/jglvodtx.html