Java 类java.util.concurrent.ScheduledFuture 实例源码

项目:theskeleton    文件:S3ClientConfig.java   
@Bean
public ScheduledFuture<List<String>> createBuckets(MinioClient minioClient, ScheduledExecutorService executorService, S3ClientProperties clientProps) {
    return executorService.schedule(() -> {
        try {
            for (String bucket : clientProps.buckets) {
                logger.info("Checking bucket: {}", bucket);
                if (minioClient.bucketExists(bucket))
                    continue;
                logger.info("Bucket doesn't exist, creating one");
                minioClient.makeBucket(bucket);
            }
        } catch (Exception e) {
            logger.error(e.getMessage(), e);
        } finally {
            logger.info("Bucket successfully created");
        }
        return clientProps.buckets;
    }, 5, TimeUnit.SECONDS);
}
项目:uncode-scheduler    文件:SchedulerTaskManager.java   
@Override
public ScheduledFuture<?> scheduleWithFixedDelay(Runnable task, Date startTime, long delay) {
    ScheduledFuture scheduledFuture = null;
    try {
        TaskDefine taskDefine = resolveTaskName(task);
        if (taskDefine.getType().equals(TaskDefine.TYPE_SPRING_TASK)) {
            super.scheduleWithFixedDelay(task, startTime, delay);
            LOGGER.debug(":添加本地任务[" + taskDefine.stringKey() + "]");
        } else {
            taskDefine.setStartTime(startTime);
            taskDefine.setPeriod(delay);
            scheduleTask.addTask(taskDefine);
            scheduledFuture = super.scheduleWithFixedDelay(taskWrapper(task), startTime, delay);
            LOGGER.debug(currenScheduleServer.getUuid() + ":自动向集群注册任务[" + taskDefine.stringKey() + "]");
        }
    } catch (Exception e) {
        LOGGER.error("update task error", e);
    }
    return scheduledFuture;
}
项目:Lucid2.0    文件:MapleStatEffect.java   
public final void applyEnergyBuff(final MapleCharacter applyto, final boolean infinity, int targets) {
    final long starttime = System.currentTimeMillis();
    if (infinity) {
        applyto.getClient().getSession().write(BuffPacket.giveEnergyChargeTest(0, info.get(MapleStatInfo.time) / 1000, targets));
        applyto.registerEffect(this, starttime, null, applyto.getId());
    } else {
        final EnumMap<CharacterTemporaryStat, Integer> stat = new EnumMap<>(CharacterTemporaryStat.class);
        stat.put(CharacterTemporaryStat.EnergyCharged, 10000);
        applyto.cancelEffect(this, true, -1, stat);
        applyto.getMap().broadcastMessage(applyto, BuffPacket.giveEnergyChargeTest(applyto.getId(), 10000, info.get(MapleStatInfo.time) / 1000), false);
        final CancelEffectAction cancelAction = new CancelEffectAction(applyto, this, starttime, stat);
        final ScheduledFuture<?> schedule = BuffTimer.getInstance().schedule(cancelAction, ((starttime + info.get(MapleStatInfo.time)) - System.currentTimeMillis()));
        applyto.registerEffect(this, starttime, schedule, stat, false, info.get(MapleStatInfo.time), applyto.getId());

    }
}
项目:iTAP-controller    文件:LoadMonitor.java   
public static void main(String[] args) {
    final LoadMonitor monitor = new LoadMonitor(null);
    final ScheduledExecutorService scheduler =
        Executors.newScheduledThreadPool(1);
    final ScheduledFuture<?> monitorTask =
        monitor.startMonitoring(scheduler);
    final ScheduledFuture<?> printTask =
        monitor.printMonitoring(scheduler);

    // Run the tasks for 2 minutes
    scheduler.schedule(
        new Runnable() {
            public void run() {
                monitorTask.cancel(true);
                printTask.cancel(true);
            }
        }, 5*60, TimeUnit.SECONDS);
}
项目:firebase-admin-java    文件:DefaultRunLoopTest.java   
@Test
public void testScheduleWithDelay() throws ExecutionException, InterruptedException {
  MockRunLoop runLoop = new MockRunLoop();
  try {
    assertEquals(0, runLoop.getThreadPool().getCorePoolSize());
    ScheduledFuture future = runLoop.schedule(new Runnable() {
      @Override
      public void run() {
      }
    }, 500L);
    assertEquals(1, runLoop.getThreadPool().getCorePoolSize());

    future.get();
    assertTrue(runLoop.errors.isEmpty());
  } finally {
    runLoop.getExecutorService().shutdownNow();
  }
}
项目:uncode-scheduler    文件:SchedulerTaskManager.java   
@Override
public ScheduledFuture<?> scheduleAtFixedRate(Runnable task, long period) {
    ScheduledFuture scheduledFuture = null;
    try {
        TaskDefine taskDefine = resolveTaskName(task);
        if (taskDefine.getType().equals(TaskDefine.TYPE_SPRING_TASK)) {
            super.scheduleAtFixedRate(task, period);
            LOGGER.debug(":添加本地任务[" + taskDefine.stringKey() + "]");
        } else {
            taskDefine.setPeriod(period);
            scheduleTask.addTask(taskDefine);
            scheduledFuture = super.scheduleAtFixedRate(taskWrapper(task), period);
            LOGGER.debug(currenScheduleServer.getUuid() + ":自动向集群注册任务[" + taskDefine.stringKey() + "]");
        }

    } catch (Exception e) {
        LOGGER.error("update task error", e);
    }
    return scheduledFuture;
}
项目:boohee_v5.6    文件:f.java   
public static void a() {
    try {
        for (WeakReference weakReference : a) {
            ScheduledFuture scheduledFuture = (ScheduledFuture) weakReference.get();
            if (scheduledFuture != null) {
                scheduledFuture.cancel(false);
            }
        }
        a.clear();
        if (!b.isShutdown()) {
            b.shutdown();
        }
        if (!d.isShutdown()) {
            d.shutdown();
        }
        b.awaitTermination(c, TimeUnit.SECONDS);
        d.awaitTermination(c, TimeUnit.SECONDS);
    } catch (Exception e) {
    }
}
项目:lemon    文件:ProxyTaskScheduler.java   
public ScheduledFuture<?> scheduleAtFixedRate(Runnable task,
        Date startTime, long period) {
    if (!enabled) {
        logger.debug("skip : {}", task);

        return null;
    }

    ScheduledFuture<?> future = instance.scheduleAtFixedRate(task,
            startTime, period);
    String runnableKey = findRunnableKey(task);

    if (Boolean.FALSE.equals(skipMap.get(runnableKey))) {
        future.cancel(true);
    }

    return future;
}
项目:neoscada    文件:RequestSignatureRuleImpl.java   
@Override
public void dispose ()
{
    ScheduledFuture<?> job;

    synchronized ( this )
    {
        job = this.job;
        this.job = null;
    }

    if ( job != null )
    {
        logger.debug ( "Cancelling reload job" );
        job.cancel ( true );
    }
}
项目:AeroStory    文件:MapleStatEffect.java   
public void silentApplyBuff(MapleCharacter chr, long starttime) {
    int localDuration = duration;
    localDuration = alchemistModifyVal(chr, localDuration, false);
    CancelEffectAction cancelAction = new CancelEffectAction(chr, this, starttime);
    ScheduledFuture<?> schedule = TimerManager.getInstance().schedule(cancelAction, ((starttime + localDuration) - System.currentTimeMillis()));
    chr.registerEffect(this, starttime, schedule);
    SummonMovementType summonMovementType = getSummonMovementType();
    if (summonMovementType != null) {
        final MapleSummon tosummon = new MapleSummon(chr, sourceid, chr.getPosition(), summonMovementType);
        if (!tosummon.isStationary()) {
            chr.addSummon(sourceid, tosummon);
            tosummon.addHP(x);
        }
    }
    if (sourceid == Corsair.BATTLE_SHIP) {
        chr.announce(MaplePacketCreator.skillCooldown(5221999, chr.getBattleshipHp()));
    }
}
项目:thirdcoast    文件:ClientHandler.java   
/**
 * Start streaming the items specified in the subscription.
 *
 * @param subscription Items to stream to client
 */
public void start(Subscription subscription) {
  if (scheduler != null) {
    return;
  }
  logger.info("Sending graph data to {}:{}", subscription.client(), port);
  socketAddress = new InetSocketAddress(subscription.client(), port);
  scheduler = Executors.newSingleThreadScheduledExecutor();
  // FIXME: future not checked for exception
  ScheduledFuture<?> future =
      scheduler.scheduleAtFixedRate(
          () -> {
            Buffer buffer = new Buffer();
            try {
              subscription.measurementsToJson(buffer);
              byte[] bytes = buffer.readByteArray();
              DatagramPacket packet = new DatagramPacket(bytes, bytes.length, socketAddress);
              socket.send(packet);
            } catch (IOException e) {
              logger.error("Exception sending grapher data", e);
            }
          },
          0,
          5,
          MILLISECONDS);
}
项目:openjdk-jdk10    文件:ScheduledExecutorTest.java   
/**
 * scheduleAtFixedRate executes runnable after given initial delay
 */
public void testSchedule4() throws Exception {
    final ScheduledThreadPoolExecutor p = new ScheduledThreadPoolExecutor(1);
    try (PoolCleaner cleaner = cleaner(p)) {
        final long startTime = System.nanoTime();
        final CountDownLatch done = new CountDownLatch(1);
        Runnable task = new CheckedRunnable() {
            public void realRun() {
                done.countDown();
                assertTrue(millisElapsedSince(startTime) >= timeoutMillis());
            }};
        ScheduledFuture f =
            p.scheduleAtFixedRate(task, timeoutMillis(),
                                  LONG_DELAY_MS, MILLISECONDS);
        await(done);
        assertTrue(millisElapsedSince(startTime) >= timeoutMillis());
        f.cancel(true);
    }
}
项目:openjdk-jdk10    文件:ScheduledExecutorTest.java   
/**
 * getQueue returns the work queue, which contains queued tasks
 */
public void testGetQueue() throws InterruptedException {
    final CountDownLatch done = new CountDownLatch(1);
    final ScheduledThreadPoolExecutor p = new ScheduledThreadPoolExecutor(1);
    try (PoolCleaner cleaner = cleaner(p, done)) {
        final CountDownLatch threadStarted = new CountDownLatch(1);
        ScheduledFuture[] tasks = new ScheduledFuture[5];
        for (int i = 0; i < tasks.length; i++) {
            Runnable r = new CheckedRunnable() {
                public void realRun() throws InterruptedException {
                    threadStarted.countDown();
                    await(done);
                }};
            tasks[i] = p.schedule(r, 1, MILLISECONDS);
        }
        await(threadStarted);
        BlockingQueue<Runnable> q = p.getQueue();
        assertTrue(q.contains(tasks[tasks.length - 1]));
        assertFalse(q.contains(tasks[0]));
    }
}
项目:shabdiz    文件:ApplicationNetwork.java   
/**
 * Removes the given {@code scanner} from the collection of this network's scanners.
 * This method has no effect if the given {@code scanner} does not exist in the collection of this network's scanners.
 *
 * @param scanner the scanner to remove
 * @return true, if successfully removed
 */
public boolean removeScanner(final Scanner scanner) {

    final ScheduledFuture<?> scheduled_scanner;
    final boolean removable;
    synchronized (scheduled_scanners) {
        removable = isAdded(scanner);
        scheduled_scanner = removable ? scheduled_scanners.remove(scanner) : null;
    }

    if (scheduled_scanner != null) {
        scheduled_scanner.cancel(true);
    }
    if (removable) {
        scanner.removeEnabledPropertyChangeListener(enabled_change_listener);
    }
    return removable;
}
项目:Java-9-Concurrency-Cookbook-Second-Edition    文件:MyScheduledThreadPoolExecutor.java   
/**
 * Method that schedule in the executor a periodic tasks. It calls the method of its parent class using
 * the super keyword and stores the period of the task.
 */
@Override
public ScheduledFuture<?> scheduleAtFixedRate(Runnable command,
        long initialDelay, long period, TimeUnit unit) {
    ScheduledFuture<?> task= super.scheduleAtFixedRate(command, initialDelay, period, unit);
    MyScheduledTask<?> myTask=(MyScheduledTask<?>)task;
    myTask.setPeriod(TimeUnit.MILLISECONDS.convert(period,unit));
    return task;
}
项目:lams    文件:ReschedulingRunnable.java   
public ScheduledFuture<?> schedule() {
    synchronized (this.triggerContextMonitor) {
        this.scheduledExecutionTime = this.trigger.nextExecutionTime(this.triggerContext);
        if (this.scheduledExecutionTime == null) {
            return null;
        }
        long initialDelay = this.scheduledExecutionTime.getTime() - System.currentTimeMillis();
        this.currentFuture = this.executor.schedule(this, initialDelay, TimeUnit.MILLISECONDS);
        return this;
    }
}
项目:iot-edge-greengrass    文件:WiotpMqttBrokerMonitor.java   
private void cleanUpKeepAliveTimes(String deviceName) {
    ScheduledFuture<?> future = deviceKeepAliveTimers.get(deviceName);
    if (future != null) {
        future.cancel(true);
        deviceKeepAliveTimers.remove(deviceName);
    }
}
项目:iot-edge-greengrass    文件:WiotpMqttBrokerMonitor.java   
private void scheduleDeviceKeepAliveTimer(DeviceData dd) {
    ScheduledFuture<?> f = scheduler.schedule(
            () -> {
                log.warn("[{}] Device is going to be disconnected because of timeout! timeout = {} milliseconds", dd.getName(), dd.getTimeout());
                deviceKeepAliveTimers.remove(dd.getName());
                gateway.onDeviceDisconnect(dd.getName());
            },
            dd.getTimeout(),
            TimeUnit.MILLISECONDS
    );
    deviceKeepAliveTimers.put(dd.getName(), f);
}
项目:googles-monorepo-demo    文件:TestingExecutorsTest.java   
public void testNoOpScheduledExecutor() throws InterruptedException {
  taskDone = false;
  Runnable task = new Runnable() {
    @Override public void run() {
      taskDone = true;
    }
  };
  ScheduledFuture<?> future = TestingExecutors.noOpScheduledExecutor().schedule(
      task, 10, TimeUnit.MILLISECONDS);
  Thread.sleep(20);
  assertFalse(taskDone);
  assertFalse(future.isDone());
}
项目:JavaSDK    文件:InvokerMarginClient.java   
@Override
public CompletableFuture<MarginCalcResult> calculateAsync(Ccp ccp, MarginCalcRequest request) {
  CompletableFuture<MarginCalcResult> resultPromise = new CompletableFuture<>();

  Runnable r = () -> {
    String calcId = createCalculation(ccp, request);
    Instant timeout = Instant.now().plus(POLL_TIMEOUT);
    Runnable pollTask = () -> {
      MarginCalcResult calcResult = getCalculation(ccp, calcId);
      if (calcResult.getStatus() == MarginCalcResultStatus.COMPLETED) {
        resultPromise.complete(calcResult);
        return;
      }
      if (Instant.now().isAfter(timeout)) {
        resultPromise.completeExceptionally(new MarginException("Timed out while polling margin service", "Time Out"));
        return;
      }
    };
    ScheduledFuture<?> scheduledTask =
        invoker.getExecutor().scheduleWithFixedDelay(pollTask, POLL_WAIT, POLL_WAIT, TimeUnit.MILLISECONDS);
    resultPromise.whenComplete((res, ex) -> {
      scheduledTask.cancel(true);
      // cleanup server state quietly
      try {
        deleteCalculation(ccp, calcId);
      } catch (RuntimeException ex2) {
        // ignore
      }

    });
  };
  invoker.getExecutor().execute(r);

  return resultPromise;
}
项目:guava-mock    文件:MoreExecutors.java   
@Override
public ListenableScheduledFuture<?> scheduleAtFixedRate(
    Runnable command, long initialDelay, long period, TimeUnit unit) {
  NeverSuccessfulListenableFutureTask task = new NeverSuccessfulListenableFutureTask(command);
  ScheduledFuture<?> scheduled = delegate.scheduleAtFixedRate(task, initialDelay, period, unit);
  return new ListenableScheduledTask<Void>(task, scheduled);
}
项目:athena    文件:NullScheduledExecutor.java   
@Override
public ScheduledFuture<?> scheduleWithFixedDelay(Runnable command,
                                                 long initialDelay,
                                                 long delay,
                                                 TimeUnit unit) {
    return null;
}
项目:EatDubbo    文件:HeaderExchangeServer.java   
private void stopHeartbeatTimer() {
    try {
        ScheduledFuture<?> timer = heatbeatTimer;
        if (timer != null && ! timer.isCancelled()) {
            timer.cancel(true);
        }
    } catch (Throwable t) {
        logger.warn(t.getMessage(), t);
    } finally {
        heatbeatTimer =null;
    }
}
项目:hadoop    文件:ShortCircuitCache.java   
private void startCacheCleanerThreadIfNeeded() {
  if (cacheCleaner == null) {
    cacheCleaner = new CacheCleaner();
    long rateMs = cacheCleaner.getRateInMs();
    ScheduledFuture<?> future =
        cleanerExecutor.scheduleAtFixedRate(cacheCleaner, rateMs, rateMs,
            TimeUnit.MILLISECONDS);
    cacheCleaner.setFuture(future);
    if (LOG.isDebugEnabled()) {
      LOG.debug(this + ": starting cache cleaner thread which will run " +
        "every " + rateMs + " ms");
    }
  }
}
项目:firebase-admin-java    文件:FirebaseApp.java   
<T> ScheduledFuture<T> schedule(Callable<T> command, long delayMillis) {
  checkNotNull(command);
  try {
    return ensureScheduledExecutorService().schedule(command, delayMillis, TimeUnit.MILLISECONDS);
  } catch (Exception e) {
    // This may fail if the underlying ThreadFactory does not support long-lived threads.
    throw new UnsupportedOperationException("Scheduled tasks not supported", e);
  }
}
项目:AeroStory    文件:MapleCharacter.java   
public void questTimeLimit(final MapleQuest quest, int time) {
    ScheduledFuture<?> sf = TimerManager.getInstance().schedule(new Runnable() {
        @Override
        public void run() {
            announce(MaplePacketCreator.questExpire(quest.getId()));
            MapleQuestStatus newStatus = new MapleQuestStatus(quest, MapleQuestStatus.Status.NOT_STARTED);
            newStatus.setForfeited(getQuest(quest).getForfeited() + 1);
            updateQuest(newStatus);
        }
    }, time);
    announce(MaplePacketCreator.addQuestTimeLimit(quest.getId(), time));
    timers.add(sf);
}
项目:uncode-scheduler    文件:DynamicTaskManager.java   
/**
 * 启动动态定时任务
 * 支持:
 * 1 cron时间表达式,立即执行
 * 2 startTime + period,指定时间,定时进行
 * 3 period,定时进行,立即开始
 * 4 startTime,指定时间执行
 *
 * @param targetBean     目标bean名称
 * @param targetMethod   方法
 * @param cronExpression cron表达式
 * @param startTime      指定执行时间
 * @param period         定时进行,立即开始
 * @param params         给方法传递的参数
 * @param extKeySuffix   任务后缀名
 * @param onlyOne        备用字段
 */
public static void scheduleTask(String targetBean, String targetMethod, String cronExpression, Date startTime, long period, String params, String extKeySuffix, boolean onlyOne) {
    String scheduleKey = ScheduleUtil.buildScheduleKey(targetBean, targetMethod, extKeySuffix);
    try {
        if (!SCHEDULE_FUTURES.containsKey(scheduleKey)) {
            ScheduledFuture<?> scheduledFuture = null;
            ScheduledMethodRunnable scheduledMethodRunnable = buildScheduledRunnable(targetBean, targetMethod, params, extKeySuffix, onlyOne);
            if (scheduledMethodRunnable != null) {
                if (StringUtils.isNotEmpty(cronExpression)) {
                    Trigger trigger = new CronTrigger(cronExpression);
                    scheduledFuture = ConsoleManager.getSchedulerTaskManager().schedule(scheduledMethodRunnable, trigger);
                } else if (startTime != null) {
                    if (period > 0) {
                        scheduledFuture = ConsoleManager.getSchedulerTaskManager().scheduleAtFixedRate(scheduledMethodRunnable, startTime, period);
                    } else {
                        scheduledFuture = ConsoleManager.getSchedulerTaskManager().schedule(scheduledMethodRunnable, startTime);
                    }
                } else if (period > 0) {
                    scheduledFuture = ConsoleManager.getSchedulerTaskManager().scheduleAtFixedRate(scheduledMethodRunnable, period);
                }
                if (null != scheduledFuture) {
                    SCHEDULE_FUTURES.put(scheduleKey, scheduledFuture);
                    LOGGER.debug("Building new schedule task, target bean " + targetBean + " target method " + targetMethod + ".");
                }
            } else {
                ConsoleManager.getSchedulerTaskManager().getScheduleTask()
                        .saveRunningInfo(scheduleKey, ConsoleManager.getSchedulerTaskManager().getScheduleServerUUid(), "bean not exists");
                LOGGER.debug("Bean name is not exists.");
            }
        }
    } catch (Exception e) {
        LOGGER.error(e.getMessage(), e);
    }
}
项目:jetcache    文件:RefreshCache.java   
private void addTaskOrUpdateLastAccessTime(Object taskId, long refreshMillis, K key) {
    if (refreshMillis > 0 && taskId != null) {
        RefreshTask refreshTask = taskMap.computeIfAbsent(taskId, tid -> {
            RefreshTask task = new RefreshTask(taskId, key);
            task.lastAccessTime = System.currentTimeMillis();
            ScheduledFuture<?> future = JetCacheExecutor.heavyIOExecutor().scheduleWithFixedDelay(
                    task, refreshMillis, refreshMillis, TimeUnit.MILLISECONDS);
            task.future = future;
            return task;
        });
        refreshTask.lastAccessTime = System.currentTimeMillis();
    }
}
项目:L2J-Global    文件:CastleDungeon.java   
@Override
public void onInstanceDestroy(Instance instance)
{
    // Stop running spawn task
    final ScheduledFuture<?> task = instance.getParameters().getObject("spawnTask", ScheduledFuture.class);
    if ((task != null) && !task.isDone())
    {
        task.cancel(true);
    }
    instance.setParameter("spawnTask", null);
}
项目:media_information_service    文件:Application.java   
private static void startScheduledThreads() {
    //Schedule update notifier thread
    ScheduledExecutorService scheduledExecutorService =
            Executors.newScheduledThreadPool(1);
    ScheduledFuture scheduledFuture =
            scheduledExecutorService.scheduleWithFixedDelay(new UpdateNotifier(username, repoName, version_number), 0, 96, TimeUnit.HOURS);
}
项目:GitHub    文件:HandlerExecutorServiceImpl.java   
@Override
public <T> ScheduledFuture<T> submit(Callable<T> task) {
  if (task == null) throw new NullPointerException();
  ScheduledFutureImpl<T> future = newTaskFor(task);
  execute(future);
  return future;
}
项目:etomica    文件:ConfigurationWebsocket.java   
@OnOpen
public void onOpen(final Session session, @PathParam("id") String id) {
    session.setMaxIdleTimeout(0);

    SimulationModel model = simStore.get(UUID.fromString(id));
    Simulation sim = model.getSimulation();
    SimulationWrapper wrapper = (SimulationWrapper) model.getWrapper(sim);

    Runnable sendConfigurationUpdate = () -> {
        if(sim.getController().isPaused() || !sim.getController().isActive()) {
            return;
        }


        sim.getController().doActionNow(() -> {
            Boundary[] boundaries = new Boundary[sim.getBoxCount()];
            for (int i = 0; i < sim.getBoxCount(); i++) {
                boundaries[i] = sim.getBox(i).getBoundary();
            }

            ConfigurationUpdate update = new ConfigurationUpdate(
                    wrapper.getAllCoordinates(),
                    boundaries
            );
            session.getAsyncRemote().sendObject(update);
        });

    };

    ScheduledFuture<?> task = executor.scheduleWithFixedDelay(sendConfigurationUpdate, 0, 33, TimeUnit.MILLISECONDS);
    session.getUserProperties().put("task", task);
}
项目:AeroStory    文件:MapleCharacter.java   
public void registerEffect(MapleStatEffect effect, long starttime, ScheduledFuture<?> schedule) {
if (effect.isDragonBlood()) {
    prepareDragonBlood(effect);
} else if (effect.isBerserk()) {
    checkBerserk();
} else if (effect.isBeholder()) {
    final int beholder = DarkKnight.BEHOLDER;
    if (beholderHealingSchedule != null) {
        beholderHealingSchedule.cancel(false);
    }
    if (beholderBuffSchedule != null) {
        beholderBuffSchedule.cancel(false);
    }
    Skill bHealing = SkillFactory.getSkill(DarkKnight.AURA_OF_BEHOLDER);
    int bHealingLvl = getSkillLevel(bHealing);
    if (bHealingLvl > 0) {
        final MapleStatEffect healEffect = bHealing.getEffect(bHealingLvl);
        int healInterval = healEffect.getX() * 1000;
        beholderHealingSchedule = TimerManager.getInstance().register(new Runnable() {
            @Override
            public void run() {
                addHP(healEffect.getHp());
                client.announce(MaplePacketCreator.showOwnBuffEffect(beholder, 2));
                getMap().broadcastMessage(MapleCharacter.this, MaplePacketCreator.summonSkill(getId(), beholder, 5), true);
                getMap().broadcastMessage(MapleCharacter.this, MaplePacketCreator.showOwnBuffEffect(beholder, 2), false);
            }
        }, healInterval, healInterval);
    }
    Skill bBuff = SkillFactory.getSkill(DarkKnight.HEX_OF_BEHOLDER);
    if (getSkillLevel(bBuff) > 0) {
        final MapleStatEffect buffEffect = bBuff.getEffect(getSkillLevel(bBuff));
        int buffInterval = buffEffect.getX() * 1000;
        beholderBuffSchedule = TimerManager.getInstance().register(new Runnable() {
项目:JRediClients    文件:RedissonScheduledExecutorServiceTest.java   
@Test
public void testCancel() throws InterruptedException, ExecutionException {
    RScheduledExecutorService executor = redisson.getExecutorService("test");
    ScheduledFuture<?> future1 = executor.schedule(new ScheduledRunnableTask("executed1"), 1, TimeUnit.SECONDS);
    cancel(future1);
    Thread.sleep(2000);
    assertThat(redisson.getAtomicLong("executed1").isExists()).isFalse();
}
项目:L2jBrasil    文件:SevenSignsFestival.java   
/**
    * Primarily used to terminate the Festival Manager, when the Seven Signs period changes.
    *
    * @return ScheduledFuture festManagerScheduler
    */
   @SuppressWarnings("rawtypes")
protected final ScheduledFuture getFestivalManagerSchedule()
   {
       if (_managerScheduledTask == null)
           startFestivalManager();

       return _managerScheduledTask;
   }
项目:athena    文件:DefaultIsisInterface.java   
/**
 * Starts the hello timer which sends hello packet every configured seconds.
 *
 * @param channel netty channel instance
 */
public void startHelloSender(Channel channel) {
    log.debug("IsisInterfaceImpl::startHelloSender");
    if (!helloSenderStarted) {
        isisHelloPduSender = new IsisHelloPduSender(channel, this);
        exServiceHello = Executors.newSingleThreadScheduledExecutor();
        final ScheduledFuture<?> helloHandle =
                exServiceHello.scheduleAtFixedRate(isisHelloPduSender, 0,
                                                   helloInterval, TimeUnit.SECONDS);
        helloSenderStarted = true;
    }
}
项目:iTAP-controller    文件:LoadMonitor.java   
public ScheduledFuture<?> printMonitoring(ScheduledExecutorService ses)
{
    final LoadMonitor mon = this;
    ScheduledFuture<?> monitorTask =
        ses.scheduleAtFixedRate(
            new Runnable() {
                public void run() {
                    System.out.println(mon.getLoad());
                }
            }, LOADMONITOR_SAMPLING_INTERVAL/2,
            LOADMONITOR_SAMPLING_INTERVAL, TimeUnit.MILLISECONDS);
    return monitorTask;
}
项目:lams    文件:TimerManagerTaskScheduler.java   
public ScheduledFuture<?> schedule() {
    this.scheduledExecutionTime = this.trigger.nextExecutionTime(this.triggerContext);
    if (this.scheduledExecutionTime == null) {
        return null;
    }
    setTimer(getTimerManager().schedule(this, this.scheduledExecutionTime));
    return this;
}
项目:L2jBrasil    文件:ThreadPoolManager.java   
@SuppressWarnings("rawtypes")
public ScheduledFuture scheduleAiAtFixedRate(Runnable r, long initial, long delay)
{
    try
    {
        if (delay < 0) delay = 0;
        if (initial < 0) initial = 0;
        return _aiScheduledThreadPool.scheduleAtFixedRate(r, initial, delay, TimeUnit.MILLISECONDS);
    } catch (RejectedExecutionException e) { return null; /* shutdown, ignore */ }
}
项目:fresco_floodlight    文件:MockScheduledExecutor.java   
@Override
public ScheduledFuture<?> schedule(Runnable command, long delay, TimeUnit unit) {
    if (ses == null)
        ses = Executors.newScheduledThreadPool(1);
    try {
        return ses.schedule(command, delay, unit);
    } catch (Exception e) {
        return new MockFuture<Object>(new ExecutionException(e));
    }
}