page1
START
IDLE
WAITING
CALLING
DELETING
STOPPING
DELETED
stopWatch
processEvent – after callbacks
processEvent – before callbacks
startWatch – calls poller->monitorHandle
doDelete – poller->interrupt, poller->unregisterHandle
doDelete
doDelete – swaps callbacks with interrupted callbacks, then processes callbacks
doDelete
processEvent – after callbacks
stopWatch
doDelete – poller->unregisterHandle
processEvent – swaps callbacks with interrupted callbacks, then processes callbacks
call – stores callbacks as interrupted,
and tells poller to interrupt.
stopWatch calls poller->{unregisterHandle, reset}
rewatch, rewatch{Read,Write} calls poller->MonitorHandle
unwatch, unwatch{Read,Write} calls poller->unmonitorHandle
Please note that this is not design documentation.
Last updated 17 March, 2010.
DispatchHandle state machine and side effects.