OpenDNSSEC-signer
1.4.3
|
Go to the source code of this file.
Functions | |
fifoq_type * | fifoq_create (allocator_type *allocator) |
void | fifoq_wipe (fifoq_type *q) |
void * | fifoq_pop (fifoq_type *q, worker_type **worker) |
ods_status | fifoq_push (fifoq_type *q, void *item, worker_type *worker, int *tries) |
void | fifoq_cleanup (fifoq_type *q) |
void fifoq_cleanup | ( | fifoq_type * | q | ) |
Clean up queue.
Definition at line 158 of file fifoq.c.
References fifoq_struct::allocator, allocator_deallocate(), lock_basic_destroy, lock_basic_off, fifoq_struct::q_lock, fifoq_struct::q_nonfull, and fifoq_struct::q_threshold.
Referenced by engine_cleanup().
fifoq_type* fifoq_create | ( | allocator_type * | allocator | ) |
Create new FIFO queue.
Definition at line 48 of file fifoq.c.
References fifoq_struct::allocator, allocator_alloc(), fifoq_wipe(), lock_basic_init, lock_basic_set, ods_log_error(), fifoq_struct::q_lock, fifoq_struct::q_nonfull, and fifoq_struct::q_threshold.
void* fifoq_pop | ( | fifoq_type * | q, |
worker_type ** | worker | ||
) |
Pop item from queue.
Notify waiting workers that they can start queuing again If no workers are waiting, this call has no effect.
Definition at line 91 of file fifoq.c.
References fifoq_struct::blob, fifoq_struct::count, FIFOQ_MAX_COUNT, lock_basic_broadcast, fifoq_struct::owner, and fifoq_struct::q_nonfull.
ods_status fifoq_push | ( | fifoq_type * | q, |
void * | item, | ||
worker_type * | worker, | ||
int * | tries | ||
) |
Push item to queue.
#262: If drudgers remain on hold, do additional broadcast. If no drudgers are waiting, this call has no effect.
Definition at line 121 of file fifoq.c.
References fifoq_struct::blob, fifoq_struct::count, FIFOQ_MAX_COUNT, FIFOQ_TRIES_COUNT, lock_basic_broadcast, ods_log_debug(), ods_log_deeebug(), ODS_STATUS_ASSERT_ERR, ODS_STATUS_OK, ODS_STATUS_UNCHANGED, fifoq_struct::owner, and fifoq_struct::q_threshold.
void fifoq_wipe | ( | fifoq_type * | q | ) |
Wipe queue.
Definition at line 74 of file fifoq.c.
References fifoq_struct::blob, fifoq_struct::count, FIFOQ_MAX_COUNT, and fifoq_struct::owner.
Referenced by fifoq_create().