Initial commit
This commit is contained in:
33
sources/io/reactivex/android/MainThreadDisposable.java
Normal file
33
sources/io/reactivex/android/MainThreadDisposable.java
Normal file
@@ -0,0 +1,33 @@
|
||||
package io.reactivex.android;
|
||||
|
||||
import android.os.Looper;
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||
import io.reactivex.disposables.Disposable;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
|
||||
/* loaded from: classes2.dex */
|
||||
public abstract class MainThreadDisposable implements Disposable {
|
||||
private final AtomicBoolean a = new AtomicBoolean();
|
||||
|
||||
public final boolean a() {
|
||||
return this.a.get();
|
||||
}
|
||||
|
||||
protected abstract void b();
|
||||
|
||||
@Override // io.reactivex.disposables.Disposable
|
||||
public final void dispose() {
|
||||
if (this.a.compareAndSet(false, true)) {
|
||||
if (Looper.myLooper() == Looper.getMainLooper()) {
|
||||
b();
|
||||
} else {
|
||||
AndroidSchedulers.a().a(new Runnable() { // from class: io.reactivex.android.MainThreadDisposable.1
|
||||
@Override // java.lang.Runnable
|
||||
public void run() {
|
||||
MainThreadDisposable.this.b();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user