# ``twisted`.`internet`.`task`.`Clock``

class documentation

`class Clock: (source)`

Known subclasses: `twisted.internet.testing.MemoryReactorClock`

Implements interfaces: `twisted.internet.interfaces.IReactorTime`

View In Hierarchy

Provide a deterministic, easily-controlled implementation of `IReactorTime.callLater`. This is commonly useful for writing deterministic unit tests for code which schedules events using this API.

Method | `__init__` | Undocumented
Method | `advance` | Move time on this clock forward by the given amount and run whatever pending calls should be run.
Method | `callLater` | See `twisted.internet.interfaces.IReactorTime.callLater`.
Method | `getDelayedCalls` | See `twisted.internet.interfaces.IReactorTime.getDelayedCalls`
Method | `pump` | Advance incrementally by the given set of times.
Method | `seconds` | Pretend to be time.time(). This is used internally when an operation such as `IDelayedCall.reset` needs to determine a time value relative to the current time.
Class Variable | `rightNow` | Undocumented
Instance Variable | `calls` | Undocumented
Method | `_sortCalls` | Sort the pending calls according to the time they are scheduled.

def __init__(self): (source)
overridden in `twisted.internet.testing.MemoryReactorClock`

Undocumented

def advance(self, amount): (source)
Move time on this clock forward by the given amount and run whatever pending calls should be run.

Parameters
amount:`float` | The number of seconds which to advance this clock's time.

def callLater(self, delay, callable, *args, **kw): (source)
from `twisted.internet.interfaces.IReactorTime`
See `twisted.internet.interfaces.IReactorTime.callLater`.

Parameters
delay:`float` | Undocumented
callable:`Callable[..., object]` | Undocumented
*args:`object` | Undocumented
**kw:`object` | Undocumented
Returns
`IDelayedCall` | Undocumented

def getDelayedCalls(self): (source)
from `twisted.internet.interfaces.IReactorTime`
See `twisted.internet.interfaces.IReactorTime.getDelayedCalls`

Returns
`Sequence[IDelayedCall]` | Undocumented

def pump(self, timings): (source)
Advance incrementally by the given set of times.

Parameters
timings:`Iterable[float]` | Undocumented

def seconds(self): (source)
from `twisted.internet.interfaces.IReactorTime`
Pretend to be time.time(). This is used internally when an operation such as `IDelayedCall.reset` needs to determine a time value relative to the current time.

Returns
`float` | The time which should be considered the current time.

rightNow: `float` = (source)

Undocumented

calls: `List[DelayedCall]` = (source)

Undocumented

def _sortCalls(self): (source)
Sort the pending calls according to the time they are scheduled.