@Override public void dispose() { if (runner == Thread.currentThread() && w instanceof NewThreadWorker) { ((NewThreadWorker)w).shutdown(); } else { w.dispose(); } }
@Override public void dispose() { // complete the actionQueue when worker is unsubscribed to make // room for the next worker in the workerQueue. if (unsubscribed.compareAndSet(false, true)) { actionProcessor.onComplete(); actualWorker.dispose(); } }
@Override public void dispose() { if (runner == Thread.currentThread() && w instanceof NewThreadWorker) { ((NewThreadWorker)w).shutdown(); } else { w.dispose(); } }
@Override public void dispose() { if (!cancelled) { cancelled = true; s.dispose(); w.dispose(); synchronized (this) { buffer = null; } } }
@Test public void workerDisposed() { TestScheduler scheduler = new TestScheduler(); Worker w = scheduler.createWorker(); w.dispose(); assertTrue(w.isDisposed()); }
@Override public void onError(Throwable t) { done = true; w.dispose(); clear(); actual.onError(t); }
@Test public void workerDisposed() { Worker w = Schedulers.io().createWorker(); assertFalse(((Disposable)w).isDisposed()); w.dispose(); assertTrue(((Disposable)w).isDisposed()); }
@Override public void run() { calls[0]++; w.dispose(); assertSame(TrampolineScheduler.DONE, w.schedule(new Runnable() { @Override public void run() { calls[1]++; } }, 1, TimeUnit.MILLISECONDS)); } });
@Override public void run() { calls[0]++; w.schedule(new Runnable() { @Override public void run() { calls[1]++; } }, 1, TimeUnit.MILLISECONDS); w.dispose(); } });
@Override public void onError(Throwable t) { done = true; clear(); actual.onError(t); w.dispose(); }
@Override public void onComplete() { if (done) { return; } done = true; arbiter.onComplete(s); worker.dispose(); }
void disposeTimer() { DisposableHelper.dispose(timer); Worker w = worker; if (w != null) { w.dispose(); } }
@Override public void onError(Throwable t) { synchronized (this) { buffer = null; } actual.onError(t); w.dispose(); }
@Override public void run() { if (!disposed) { try { run.run(); } catch (Throwable ex) { Exceptions.throwIfFatal(ex); worker.dispose(); throw ExceptionHelper.wrapOrThrow(ex); } } }
@Override public void cancel() { SubscriptionHelper.cancel(s); worker.dispose(); }
@Override public void cancel() { s.cancel(); worker.dispose(); }
@Override public void onError(Throwable t) { if (done) { RxJavaCommonPlugins.onError(t); return; } done = true; actual.onError(t); worker.dispose(); }
@Override public void onError(Throwable t) { if (done) { RxJavaCommonPlugins.onError(t); return; } done = true; actual.onError(t); worker.dispose(); }
@Override public void dispose() { if (!cancelled) { cancelled = true; s.dispose(); w.dispose(); synchronized (this) { buffer = null; } } }
@Override public void dispose() { disposed = true; worker.dispose(); }