From 50791a2493e542166fc8b63ab2fb43602f7b435a Mon Sep 17 00:00:00 2001 From: liudawei Date: Mon, 6 Jan 2020 19:05:45 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=84=E7=90=86=E9=87=8D=E5=A4=8D=E7=9A=84?= =?UTF-8?q?=E8=AE=A2=E9=98=85=E5=9B=9E=E8=B0=83=EF=BC=8C=E7=BA=BF=E7=A8=8B?= =?UTF-8?q?=E5=88=87=E6=8D=A2=E6=97=B6=EF=BC=8C=E4=B8=8D=E5=86=8D=E9=87=8D?= =?UTF-8?q?=E5=A4=8D=E6=B3=A8=E5=86=8C=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/github/ldw5821cn/observer/ObservableObserveOn.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/io/github/ldw5821cn/observer/ObservableObserveOn.java b/src/main/java/io/github/ldw5821cn/observer/ObservableObserveOn.java index 932c4b5..046b077 100644 --- a/src/main/java/io/github/ldw5821cn/observer/ObservableObserveOn.java +++ b/src/main/java/io/github/ldw5821cn/observer/ObservableObserveOn.java @@ -17,7 +17,6 @@ public ObservableObserveOn(ObservableSource source, Scheduler scheduler) { @Override protected void subscribeActual(Observer observer) { ObserverOnObserver observeOn = new ObserverOnObserver(observer); - observer.onSubscribe(); source.subscribe(observeOn); scheduler.scheduleDirect(observeOn); } @@ -57,6 +56,9 @@ public void onError(Throwable t) { @Override public void onSubscribe() { + if(!isSubscribed.compareAndSet(false,true)){ + return; + } actual.onSubscribe(); }