package o.a.h.g;

import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Future;
import java.util.concurrent.FutureTask;
import java.util.concurrent.atomic.AtomicReference;

/* JADX INFO: loaded from: classes.dex */
public final class c implements Callable<Void>, o.a.e.b {

    /* JADX INFO: renamed from: f, reason: collision with root package name */
    public static final FutureTask<Void> f6044f = new FutureTask<>(o.a.h.b.a.a, null);

    /* JADX INFO: renamed from: m, reason: collision with root package name */
    public final Runnable f6045m;

    /* JADX INFO: renamed from: p, reason: collision with root package name */
    public final ExecutorService f6048p;

    /* JADX INFO: renamed from: q, reason: collision with root package name */
    public Thread f6049q;

    /* JADX INFO: renamed from: o, reason: collision with root package name */
    public final AtomicReference<Future<?>> f6047o = new AtomicReference<>();

    /* JADX INFO: renamed from: n, reason: collision with root package name */
    public final AtomicReference<Future<?>> f6046n = new AtomicReference<>();

    public c(Runnable runnable, ExecutorService executorService) {
        this.f6045m = runnable;
        this.f6048p = executorService;
    }

    public void a(Future<?> future) {
        Future<?> future2;
        do {
            future2 = this.f6047o.get();
            if (future2 == f6044f) {
                future.cancel(this.f6049q != Thread.currentThread());
                return;
            }
        } while (!this.f6047o.compareAndSet(future2, future));
    }

    @Override // o.a.e.b
    public void b() {
        AtomicReference<Future<?>> atomicReference = this.f6047o;
        FutureTask<Void> futureTask = f6044f;
        Future<?> andSet = atomicReference.getAndSet(futureTask);
        if (andSet != null && andSet != futureTask) {
            andSet.cancel(this.f6049q != Thread.currentThread());
        }
        Future<?> andSet2 = this.f6046n.getAndSet(futureTask);
        if (andSet2 == null || andSet2 == futureTask) {
            return;
        }
        andSet2.cancel(this.f6049q != Thread.currentThread());
    }

    @Override // java.util.concurrent.Callable
    public Void call() {
        this.f6049q = Thread.currentThread();
        try {
            this.f6045m.run();
            Future<?> futureSubmit = this.f6048p.submit(this);
            while (true) {
                Future<?> future = this.f6046n.get();
                if (future == f6044f) {
                    futureSubmit.cancel(this.f6049q != Thread.currentThread());
                } else if (this.f6046n.compareAndSet(future, futureSubmit)) {
                    break;
                }
            }
            this.f6049q = null;
        } catch (Throwable th) {
            this.f6049q = null;
            g.h.a.i.P2(th);
        }
        return null;
    }
}
