Change Timeout.cancel() to return a boolean value, true on a successful cancel

As requested in the javadoc for HashedWheelTimer
This commit is contained in:
Cruz Julian Bishop 2012-06-29 21:59:48 +10:00
parent c35f90f920
commit 04cf836cf0
2 changed files with 9 additions and 7 deletions

View File

@ -501,13 +501,13 @@ public class HashedWheelTimer implements Timer {
}
@Override
public void cancel() {
public boolean cancel() {
if (!state.compareAndSet(ST_INIT, ST_CANCELLED)) {
// TODO return false
return;
return false;
}
wheel[stopIndex].remove(this);
return true;
}
@Override

View File

@ -44,9 +44,11 @@ public interface Timeout {
boolean isCancelled();
/**
* Cancels the {@link TimerTask} associated with this handle. It the
* task has been executed or cancelled already, it will return with no
* side effect.
* Attempts to cancel the {@link TimerTask} associated with this handle.
* If the task has been executed or cancelled already, it will return with
* no side effect.
*
* @return True if the cancellation completed successfully, otherwise false
*/
void cancel();
boolean cancel();
}