多线程调度程序rxjava行为与java中的主线程

zbdgwd5y  于 2021-07-06  发布在  Java
关注(0)|答案(0)|浏览(306)

我正在用rxjava研究java平台上的React式编程。我不清楚如何使用主java线程处理调度程序,在React式文档中,他们提到的示例中,有thread.sleep(x)方法使主线程休眠,而次线程正在执行,但我发现这个解决方案并不实用,因为如果一个api调用的响应时间比我分配它的时间长,我就会丢失信息,如果我分配它更多的时间,系统就会停止等待唤醒主线程。
这是我正在测试的方法

Disposable d = Single.just(repo.getDtos())
                .subscribeOn(Schedulers.io())
                .subscribeWith(new DisposableSingleObserver<ArrayList<indiceUsuarios>>() {
                    @Override
                    public void onStart() {
                        System.out.println("Started");                      
                    }

                    @Override
                    public void onSuccess(ArrayList<indiceUsuarios> t) {
                        for (indiceUsuarios st : t) {
                             System.out.println(st.toString());
                        }                  
                    }

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

                    }
                });

d.dispose();

////////////////////////////////////////
在这个方法中,我连接到一个云数据库并获得一个arraylist
d、 dispose(),在这里我运行这个方法。
当主线程完成从schedulers.io()接收信息时,是否有一种方法让它暂停并恢复执行?可能是得到了observable的oncomplete()方法,而不是使用single。非常感谢你。问候社区!!

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题