EOperationPool

EOperationPool

Synopsis

                    EOperationPool;
EOperationPool *    e_operation_pool_new                (guint max_threads,
                                                         GFunc thread_func,
                                                         gpointer user_data);
void                e_operation_pool_free               (EOperationPool *pool);
guint32             e_operation_pool_reserve_opid       (EOperationPool *pool);
void                e_operation_pool_release_opid       (EOperationPool *pool,
                                                         guint32 opid);
void                e_operation_pool_push               (EOperationPool *pool,
                                                         gpointer opdata);

Description

Details

EOperationPool

typedef struct _EOperationPool EOperationPool;

Contains only private data that should be read and manipulated using the functions below.

Since 3.2


e_operation_pool_new ()

EOperationPool *    e_operation_pool_new                (guint max_threads,
                                                         GFunc thread_func,
                                                         gpointer user_data);

FIXME: Document me.

Since 3.2


e_operation_pool_free ()

void                e_operation_pool_free               (EOperationPool *pool);

FIXME: Document me.

Since 3.2


e_operation_pool_reserve_opid ()

guint32             e_operation_pool_reserve_opid       (EOperationPool *pool);

Reserves new operation ID, which is returned. This operation ID may be released by e_operation_pool_release_opid() when the operation is finished.

pool :

an EOperationPool

Returns :

a new operation ID

Since 3.2


e_operation_pool_release_opid ()

void                e_operation_pool_release_opid       (EOperationPool *pool,
                                                         guint32 opid);

Releases opid previously reserved by e_operation_pool_reserve_opid().

pool :

an EOperationPool

opid :

an operation ID

Since 3.2


e_operation_pool_push ()

void                e_operation_pool_push               (EOperationPool *pool,
                                                         gpointer opdata);

Pushes an operation to be processed. opdata is passed to the function provided in e_operation_pool_new().

pool :

an EOperationPool

opdata :

user data for the operation

Since 3.2