## org.mortbay.thread
Class Timeout

    java.lang.Object
      org.mortbay.thread.Timeout

    public class Timeout

extends Object

Timeout queue. This class implements a timeout queue for timers that are at least as likely to be cancelled as they are to expire. Unlike the util timeout class, the duration of the timouts is shared by all scheduled tasks and if the duration is changed, this affects all scheduled tasks.

The nested class Task should be extended by users of this class to obtain call back notification of expiries.

This class is not synchronized and the caller must protect against multiple thread access.

Author:
  gregw

Nested Class Summary
`static class` `Timeout.Task` Task.

Constructor Summary
`Timeout()`

Method Summary
`void` `cancelAll()`
`Timeout.Task` `expired()`
`long` `getDuration()`
`long` `getNow()`
`long` `getTimeToNext()`
`boolean` `isEmpty()`
`void` `schedule(Timeout.Task task)`
`void` `schedule(Timeout.Task task, long delay)`
`void` `setDuration(long duration)`
`void` `setNow()`
`void` `setNow(long now)`
`void` `tick()`
`String` `toString()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### Timeout

    public Timeout()

Method Detail

### getDuration

    public long getDuration()

  Returns:
    Returns the duration.

### setDuration

    public void setDuration(long duration)

  Parameters:
    `duration` - The duration to set.

### setNow

    public void setNow()

### getNow

    public long getNow()

### setNow

    public void setNow(long now)

### expired

    public Timeout.Task expired()

### tick

    public void tick()

### schedule

    public void schedule(Timeout.Task task)

### schedule

    public void schedule(Timeout.Task task,
                         long delay)

### cancelAll

    public void cancelAll()

### isEmpty

    public boolean isEmpty()

### getTimeToNext

    public long getTimeToNext()

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

Copyright © 2007 Mort Bay Consulting. All Rights Reserved.