protected void wakeUp(InternalJob job, long delay) { Assert.isLegal(delay >= 0, "Scheduling delay is negative"); //$NON-NLS-1$ synchronized (lock) { //cannot wake up if it is not sleeping if (job.getState() != Job.SLEEPING) return; doSchedule(job, delay); } //call the pool outside sync block to avoid deadlock pool.jobQueued(); //only notify of wake up if immediate if (delay == 0) jobListeners.awake((Job) job); }
protected void wakeUp(InternalJob job, long delay) { Assert.isLegal(delay >= 0, "Scheduling delay is negative"); //$NON-NLS-1$ synchronized (lock) { //cannot wake up if it is not sleeping if (job.getState() != Job.SLEEPING) return; doSchedule(job, delay); } //call the pool outside sync block to avoid deadlock pool.jobQueued(); //only notify of wake up if immediate if (delay == 0) jobListeners.awake((Job) job); }
protected void wakeUp(InternalJob job, long delay) { Assert.isLegal(delay >= 0, "Scheduling delay is negative"); //$NON-NLS-1$ synchronized (lock) { //cannot wake up if it is not sleeping if (job.getState() != Job.SLEEPING) return; doSchedule(job, delay); } //call the pool outside sync block to avoid deadlock pool.jobQueued(); //only notify of wake up if immediate if (delay == 0) jobListeners.awake((Job) job); }
protected void wakeUp(InternalJob job, long delay) { Assert.isLegal(delay >= 0, "Scheduling delay is negative"); //$NON-NLS-1$ synchronized (lock) { //cannot wake up if it is not sleeping if (job.getState() != Job.SLEEPING) return; doSchedule(job, delay); } //call the pool outside sync block to avoid deadlock pool.jobQueued(); //only notify of wake up if immediate if (delay == 0) jobListeners.awake((Job) job); }