我想在RxJava中实现一个下载一些文件的处理队列。我想下载的文件数量可能高达100个左右。
一切都是在Android上使用RxJava 1.1.1开发的
PublishSubject<URL> publishSubject = PublishSubject.create();
_subject = new SerializedSubject<>(publishSubject);
_subscription = _subject
.subscribeOn(Schedulers.io())
.observeOn(Schedulers.io())
.subscribe(_getObserver()); // Observer
_subject.onBackpressureBuffer(10000, new Action0() {
@Override
public void call() {
Log.d(TAG, "onBackpressureBuffer called");
return;
}
});
// download a file
_subject.onNext(aValidURL);
我做错了什么?
在RxJava中,应用运算符时,会得到一个新的可观察实例,该实例具有修改后的行为,但原始实例保持不变。在这里,您对_subject
调用了onbackpressurebuffer
,但不使用它的结果,否则调用不执行任何操作。您需要按顺序应用它:
PublishSubject<URL> publishSubject = PublishSubject.create();
_subject = new SerializedSubject<>(publishSubject);
_subscription = _subject
.onBackpressureBuffer(10000, new Action0() {
@Override
public void call() {
Log.d(TAG, "onBackpressureBuffer called");
return;
}
})
.subscribeOn(Schedulers.io())
.observeOn(Schedulers.io())
.subscribe(_getObserver()); // Observer
// download a file
_subject.onNext(aValidURL);
我已经调整了控制器构造函数和fxml,所以除了fxml构造和fxml加载之外,控制器的所有fxml设置都在fxml中。这里是我的控制器:
问题内容: 当我运行以下代码时: 我得到一个异常说: 为什么会出现此异常? 编辑:tmpList是一个LinkedList,其每个节点都包含DepConfAttr类型的对象。 我正在基于内存(首先是最高内存)对tmpList进行排序,这是DepConfAttr对象的属性之一。 上面的代码反映了我要通过以下代码实现的目标 问题答案: 为什么会出现此异常? 您要遍历列表,而不是通过迭代器从列表中删除一
我收到这样的类型错误:- 甚至我正在使用jdk版本:-java版本"1.7.0_55"OpenJDK运行时环境(IcedTea 2.4.7)(7u55-2.4.7-1ubuntu1)OpenJDK 64位服务器VM(构建24.51-b03,混合模式) 请有人帮助我,我应该在我的项目中使用这样的组件。
问题内容: 我正在使用ant生成javadocs,但是一遍又一遍地获取此异常-为什么? 我正在使用JDK 1.6.0_06 版本。 问题答案: 看来这已被报告为Java错误。这似乎是由于使用了第三方库(例如JUnit)中的注释,而在Javadoc调用中不包含带有该注释的jar。 如果是这种情况,只需在javadoc上使用-classpath选项并包括额外的jar文件。
问题内容: 我已经调整了控制器的构造函数和fxml,以便将控制器的fxml的所有设置都放在fxml中,除了FXML的构造和fxml的加载。这是我的控制器: 和我的fxml文件: 当调用fxmlLoader.load()并返回FXMLLoader时会发生stackoverflow fxmlLoader = new FXMLLoader(…),然后再次调用fxmlLoader.load()…为什么会发
我想做一个APK的网络应用程序,我把它包装成Cordova。我遵循了各种教程,安装了Gradle并使其工作。 当我从CMD运行时,我会得到以下错误: