boolean innerCancel(boolean mayInterruptIfRunning) { for (; ; ) { int s = getState(); if (ranOrCancelled(s)) { return false; } if (compareAndSetState(s, CANCELED)) { break; } } if (mayInterruptIfRunning) { Thread r = runningThread; if (r != null) { r.interrupt(); } } releaseShared(0); done(); return true; }
void innerSet(Map<String, Object> v) { for (; ; ) { int s = getState(); if (ranOrCancelled(s)) { return; } if (compareAndSetState(s, COMPLETED)) { break; } } result = v; releaseShared(0); done(); }
void innerSetException(Throwable t) { for (; ; ) { int s = getState(); if (ranOrCancelled(s)) { return; } if (compareAndSetState(s, COMPLETED)) { break; } } exception = t; result = null; releaseShared(0); done(); }
boolean innerCancel(boolean mayInterruptIfRunning) { for (;;) { int s = getState(); if (ranOrCancelled(s)) { return false; } if (compareAndSetState(s, CANCELED)) { break; } } if (mayInterruptIfRunning) { Thread r = runningThread; if (r != null) { r.interrupt(); } } releaseShared(0); done(); return true; }
void innerSet(Map<String,Object> v) { for (;;) { int s = getState(); if (ranOrCancelled(s)) { return; } if (compareAndSetState(s, COMPLETED)) { break; } } result = v; releaseShared(0); done(); }
void innerSetException(Throwable t) { for (;;) { int s = getState(); if (ranOrCancelled(s)) { return; } if (compareAndSetState(s, COMPLETED)) { break; } } exception = t; result = null; releaseShared(0); done(); }