@Override
 public void onComplete() {
   if (done) {
     return;
   }
   done = true;
   worker.dispose();
   disposeTimer();
   arbiter.onComplete(s);
 }