コード例 #1
0
 protected internal override void After()
 {
     lock (this)
     {
         if (null != _thunk && !_thunk.Done)
         {
             _thunk.cancel(true);
         }
         _thunk = null;
         base.After();
     }
 }
コード例 #2
0
        internal virtual Resource StartPrinting()
        {
            ScheduledExecutorService timer = Executors.newSingleThreadScheduledExecutor();
//JAVA TO C# CONVERTER WARNING: Java wildcard generics have no direct equivalent in .NET:
//ORIGINAL LINE: java.util.concurrent.ScheduledFuture<?> timerFuture = timer.scheduleAtFixedRate(this::printOnNextUpdate, 0, interactive ? 100 : 5_000, java.util.concurrent.TimeUnit.MILLISECONDS);
            ScheduledFuture <object> timerFuture = timer.scheduleAtFixedRate(this.printOnNextUpdate, 0, _interactive ? 100 : 5_000, TimeUnit.MILLISECONDS);

            return(() =>
            {
                timerFuture.cancel(false);
                timer.shutdown();
                try
                {
                    timer.awaitTermination(10, TimeUnit.SECONDS);
                }
                catch (InterruptedException)
                {
                }
                Done();
                PrintProgress();
            });
        }
コード例 #3
0
 public override void Stop()
 {
     TickFuture.cancel(true);
     Scheduler.shutdownNow();
 }