Gibt es eine Scheduler API in RxJava auch auf AndroidSchedulers.mainThread() in RxAndroid. Also, wenn ich eine Aufgabe auf einen neuen Thread planen und ich möchte es auf Java Main Thread beobachten, wie würde ich das tun?Was ist die Alternative zu AndroidSchedulers.mainThread() in RxJava?
bearbeiten Unten ist ein Beispiel RxSubscription, mit kommentierten System.in, der Haupt-Thread getötet wird, während die Observable.interval auf einem separaten Thread ausgeführt wird. In Android kann ich sagen, observeOn (AndroidSchedulers.MainThread) und jede Operation danach würde auf dem Hauptthread laufen. Ich suche nach einem ähnlichen Scheduler in Java, da AndroidSchedulers Teil von RxAndroid ist.
import java.io.IOException;
import java.util.concurrent.TimeUnit;
import rx.Observable;
public class Main {
public static void main(String[] args) throws InterruptedException, IOException {
Observable<Long> values = Observable.interval(1000, TimeUnit.MILLISECONDS);
values.subscribe(
v -> System.out.println("Received: " + v),
e -> System.out.println("Error: " + e),
() -> System.out.println("Completed")
);
//System.in.read();
}
}
Wäre interessant zu wissen, * warum * Sie das brauchen. Da es nur einen Hauptthread gibt, gibt es nicht viele Optionen. – FWeigl
Warum müssen Sie etwas in einem bestimmten Thread beobachten? in Android hat der Hauptthread eine besondere Bedeutung, was ist Ihre Anforderung? –
@Ascorbin bearbeitet Frage zu erarbeiten –