EDU.oswego.cs.dl.util.concurrent

Class PooledExecutor.DiscardOldestWhenBlocked

Enclosing Class:
PooledExecutor
Implemented Interfaces:
PooledExecutor.BlockedExecutionHandler

protected class PooledExecutor.DiscardOldestWhenBlocked
extends Object
implements PooledExecutor.BlockedExecutionHandler

Class defining DiscardOldest action. Under this policy, at most one old unhandled task is discarded. If the new task can then be handed off, it is. Otherwise, the new task is run in the current thread (i.e., RunWhenBlocked is used as a backup policy.)

Method Summary

boolean
blockedAction(Runnable command)
Return true if successfully handled so, execute should terminate; else return false if execute loop should be retried.

Method Details

blockedAction

public boolean blockedAction(Runnable command)
            throws InterruptedException
Return true if successfully handled so, execute should terminate; else return false if execute loop should be retried.
Specified by:
blockedAction in interface PooledExecutor.BlockedExecutionHandler