Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef __DISPATCH_GROUP__
00025 #define __DISPATCH_GROUP__
00026
00027 #ifndef __DISPATCH_INDIRECT__
00028 #error "Please #include <xdispatch/dispatch.h> instead of this file directly."
00029 #include "base.h"
00030 #endif
00031
00037 DISPATCH_DECL(dispatch_group);
00038
00039 __DISPATCH_BEGIN_DECLS
00040
00055 DISPATCH_EXPORT dispatch_group_t
00056 dispatch_group_create(void);
00057
00081 #ifdef XDISPATCH_HAS_BLOCKS
00082 DISPATCH_EXPORT void
00083 dispatch_group_async(dispatch_group_t group,
00084 dispatch_queue_t queue,
00085 dispatch_block_t block);
00086 #endif
00087
00114 DISPATCH_EXPORT void
00115 dispatch_group_async_f(dispatch_group_t group,
00116 dispatch_queue_t queue,
00117 void *context,
00118 dispatch_function_t work);
00119
00155 DISPATCH_EXPORT long
00156 dispatch_group_wait(dispatch_group_t group, dispatch_time_t timeout);
00157
00188 #ifdef XDISPATCH_HAS_BLOCKS
00189 DISPATCH_EXPORT void
00190 dispatch_group_notify(dispatch_group_t group,
00191 dispatch_queue_t queue,
00192 dispatch_block_t block);
00193 #endif
00194
00217 DISPATCH_EXPORT void
00218 dispatch_group_notify_f(dispatch_group_t group,
00219 dispatch_queue_t queue,
00220 void *context,
00221 dispatch_function_t work);
00222
00238 DISPATCH_EXPORT void
00239 dispatch_group_enter(dispatch_group_t group);
00240
00255 DISPATCH_EXPORT void
00256 dispatch_group_leave(dispatch_group_t group);
00257
00258 __DISPATCH_END_DECLS
00259
00260 #endif