package kotlinx.coroutines.internal; import androidx.concurrent.futures.AbstractResolvableFuture$SafeAtomicHelper$$ExternalSyntheticBackportWithForwarding0; import java.util.concurrent.atomic.AtomicReferenceFieldUpdater; /* loaded from: classes5.dex */ public class LockFreeTaskQueue { public static final AtomicReferenceFieldUpdater _cur$FU = AtomicReferenceFieldUpdater.newUpdater(LockFreeTaskQueue.class, Object.class, "_cur"); private volatile Object _cur; public LockFreeTaskQueue(boolean z) { this._cur = new LockFreeTaskQueueCore(8, z); } public final int getSize() { return ((LockFreeTaskQueueCore) _cur$FU.get(this)).getSize(); } public final void close() { AtomicReferenceFieldUpdater atomicReferenceFieldUpdater = _cur$FU; while (true) { LockFreeTaskQueueCore lockFreeTaskQueueCore = (LockFreeTaskQueueCore) atomicReferenceFieldUpdater.get(this); if (lockFreeTaskQueueCore.close()) { return; } else { AbstractResolvableFuture$SafeAtomicHelper$$ExternalSyntheticBackportWithForwarding0.m(_cur$FU, this, lockFreeTaskQueueCore, lockFreeTaskQueueCore.next()); } } } public final boolean addLast(Object obj) { AtomicReferenceFieldUpdater atomicReferenceFieldUpdater = _cur$FU; while (true) { LockFreeTaskQueueCore lockFreeTaskQueueCore = (LockFreeTaskQueueCore) atomicReferenceFieldUpdater.get(this); int addLast = lockFreeTaskQueueCore.addLast(obj); if (addLast == 0) { return true; } if (addLast == 1) { AbstractResolvableFuture$SafeAtomicHelper$$ExternalSyntheticBackportWithForwarding0.m(_cur$FU, this, lockFreeTaskQueueCore, lockFreeTaskQueueCore.next()); } else if (addLast == 2) { return false; } } } public final Object removeFirstOrNull() { AtomicReferenceFieldUpdater atomicReferenceFieldUpdater = _cur$FU; while (true) { LockFreeTaskQueueCore lockFreeTaskQueueCore = (LockFreeTaskQueueCore) atomicReferenceFieldUpdater.get(this); Object removeFirstOrNull = lockFreeTaskQueueCore.removeFirstOrNull(); if (removeFirstOrNull != LockFreeTaskQueueCore.REMOVE_FROZEN) { return removeFirstOrNull; } AbstractResolvableFuture$SafeAtomicHelper$$ExternalSyntheticBackportWithForwarding0.m(_cur$FU, this, lockFreeTaskQueueCore, lockFreeTaskQueueCore.next()); } } }