Barrelfish
Functions
deferred.c File Reference

Deferred events (ie. timers) More...

Functions

systime_t get_system_time (void)
 Returns the system time when the current dispatcher was last dispatched.
 
errval_t deferred_event_register (struct deferred_event *event, struct waitset *ws, delayus_t delay, struct event_closure closure)
 Register a deferred event. More...
 
errval_t deferred_event_cancel (struct deferred_event *event)
 Cancel a deferred event that has not yet fired.
 
errval_t periodic_event_create (struct periodic_event *event, struct waitset *ws, delayus_t period, struct event_closure closure)
 Create a periodic event. More...
 
errval_t periodic_event_cancel (struct periodic_event *event)
 Cancel a periodic event.
 
void trigger_deferred_events_disabled (dispatcher_handle_t dh, systime_t now)
 Trigger any pending deferred events, while disabled.
 

Detailed Description

Deferred events (ie. timers)

Function Documentation

errval_t deferred_event_register ( struct deferred_event *  event,
struct waitset ws,
delayus_t  delay,
struct event_closure  closure 
)

Register a deferred event.

Parameters
wsWaitset
delayDelay in microseconds
closureEvent closure to execute
eventStorage for event metadata
errval_t periodic_event_create ( struct periodic_event *  event,
struct waitset ws,
delayus_t  period,
struct event_closure  closure 
)

Create a periodic event.

A periodic event will repeatedly run a closure at a fixed rate until cancelled.

Parameters
eventStorage for event state
wsWaitset
periodPeriod, in microseconds
closureClosure to run