dispatch_after - Man Page

schedule blocks for deferred execution

Synopsis

#include <dispatch/dispatch.h>

void
dispatch_after(dispatch_time_t when, dispatch_queue_t queue, void (^block)(void));

void
dispatch_after_f(dispatch_time_t when, dispatch_queue_t queue, void *context, void (*function)(void *));

Description

The dispatch_after() function submits the block to the given queue at the time specified by the when parameter. The when parameter is a value created by dispatch_time() or dispatch_walltime(). Submission of the block may be delayed by the system in order to improve power consumption and system performance. The system applies a leeway (see dispatch_source_set_timer(3)) that is equal to one tenth of the interval between when and the time at which the function is called, with the leeway capped to at least one millisecond and at most one minute.

For a more detailed description about submitting blocks to queues, see dispatch_async(3).

Caveats

dispatch_after() retains the passed queue.

Specifying DISPATCH_TIME_NOW as the when parameter is supported, but is not as efficient as calling dispatch_async().

The result of passing DISPATCH_TIME_FOREVER as the when parameter is undefined.

Fundamentals

The dispatch_after() function is a wrapper around dispatch_after_f().

See Also

dispatch(3), dispatch_async(3), dispatch_time(3)

Referenced By

dispatch(3), dispatch_time(3).

May 1, 2009