/** Requires lock to held by caller */ @GuardedBy("lock") protected void startMonitor() { if(monitor_future == null || monitor_future.isDone()) { last_ack=System.nanoTime(); // start from scratch monitor_future=timer.scheduleWithFixedDelay(new Monitor(), timeout, timeout, TimeUnit.MILLISECONDS, false); num_tries.set(1); } }
private void startMonitor() { monitor_lock.lock(); try { if(monitor_future == null || monitor_future.isDone()) { last_ack=System.currentTimeMillis(); // start from scratch monitor_future=timer.scheduleWithFixedDelay(new Monitor(), timeout, timeout, TimeUnit.MILLISECONDS); num_tries=0; } } finally { monitor_lock.unlock(); } }
/** Requires lock to held by caller */ @GuardedBy("lock") protected void startMonitor() { if(monitor_future == null || monitor_future.isDone()) { last_ack=System.nanoTime(); // start from scratch monitor_future=timer.scheduleWithFixedDelay(new Monitor(), timeout, timeout, TimeUnit.MILLISECONDS, false); num_tries.set(1); } }