schroasync

schroasync

Synopsis




                    SchroAsync;
                    SchroAsyncTask;
void                (*SchroAsyncCompleteFunc)           (void *);
int                 (*SchroAsyncScheduleFunc)           (void *,
                                                         SchroExecDomain exec_domain);
                    SchroThread;
SchroAsync*         schro_async_new                     (int n_threads,
                                                         SchroAsyncScheduleFunc schedule,
                                                         SchroAsyncCompleteFunc complete,
                                                         void *closure);
void                schro_async_free                    (SchroAsync *async);
int                 schro_async_get_num_completed       (SchroAsync *async);
void                schro_async_lock                    (SchroAsync *async);
void                schro_async_unlock                  (SchroAsync *async);
void*               schro_async_pull                    (SchroAsync *async);
void*               schro_async_pull_locked             (SchroAsync *async);
void                schro_async_run_locked              (SchroAsync *async,
                                                         void (*func) (void *),
                                                         void *ptr);
void                schro_async_signal_scheduler        (SchroAsync *async);
int                 schro_async_wait_locked             (SchroAsync *async);
void                schro_async_wait_one                (SchroAsync *async);
void                schro_async_add_cuda                (SchroAsync *async);
SchroExecDomain     schro_async_get_exec_domain         (void);
void                schro_async_wait                    (SchroAsync *async,
                                                         int min_waiting);

Description

Details

SchroAsync

typedef struct _SchroAsync SchroAsync;


SchroAsyncTask

typedef struct _SchroAsyncTask SchroAsyncTask;


SchroAsyncCompleteFunc ()

void                (*SchroAsyncCompleteFunc)           (void *);

Param1 :

SchroAsyncScheduleFunc ()

int                 (*SchroAsyncScheduleFunc)           (void *,
                                                         SchroExecDomain exec_domain);

Param1 :
exec_domain :
Returns :

SchroThread

typedef struct _SchroThread SchroThread;


schro_async_new ()

SchroAsync*         schro_async_new                     (int n_threads,
                                                         SchroAsyncScheduleFunc schedule,
                                                         SchroAsyncCompleteFunc complete,
                                                         void *closure);

n_threads :
schedule :
complete :
closure :
Returns :

schro_async_free ()

void                schro_async_free                    (SchroAsync *async);

async :

schro_async_get_num_completed ()

int                 schro_async_get_num_completed       (SchroAsync *async);

async :
Returns :

schro_async_lock ()

void                schro_async_lock                    (SchroAsync *async);

async :

schro_async_unlock ()

void                schro_async_unlock                  (SchroAsync *async);

async :

schro_async_pull ()

void*               schro_async_pull                    (SchroAsync *async);

async :
Returns :

schro_async_pull_locked ()

void*               schro_async_pull_locked             (SchroAsync *async);

async :
Returns :

schro_async_run_locked ()

void                schro_async_run_locked              (SchroAsync *async,
                                                         void (*func) (void *),
                                                         void *ptr);

async :
func :
ptr :

schro_async_signal_scheduler ()

void                schro_async_signal_scheduler        (SchroAsync *async);

async :

schro_async_wait_locked ()

int                 schro_async_wait_locked             (SchroAsync *async);

async :
Returns :

schro_async_wait_one ()

void                schro_async_wait_one                (SchroAsync *async);

async :

schro_async_add_cuda ()

void                schro_async_add_cuda                (SchroAsync *async);

async :

schro_async_get_exec_domain ()

SchroExecDomain     schro_async_get_exec_domain         (void);

Returns :

schro_async_wait ()

void                schro_async_wait                    (SchroAsync *async,
                                                         int min_waiting);

async :
min_waiting :