![]() |
XRootD
|
Go to the source code of this file.
Functions | |
unsigned int | XrdFfsQueue_count_tasks () |
int | XrdFfsQueue_count_workers () |
struct XrdFfsQueueTasks * | XrdFfsQueue_create_task (void *(*func)(void *), void **args, short initstat) |
int | XrdFfsQueue_create_workers (int n) |
struct XrdFfsQueueTasks * | XrdFfsQueue_dequeue () |
void | XrdFfsQueue_enqueue (struct XrdFfsQueueTasks *task) |
void | XrdFfsQueue_free_task (struct XrdFfsQueueTasks *task) |
int | XrdFfsQueue_remove_workers (int n) |
void | XrdFfsQueue_wait_task (struct XrdFfsQueueTasks *task) |
void * | XrdFfsQueue_worker (void *x) |
Variables | |
unsigned int | XrdFfsQueueNext_task_id = 0 |
unsigned short | XrdFfsQueueNworkers = 0 |
pthread_cond_t | XrdFfsQueueTaskque_cond = PTHREAD_COND_INITIALIZER |
struct XrdFfsQueueTasks * | XrdFfsQueueTaskque_head = NULL |
pthread_mutex_t | XrdFfsQueueTaskque_mutex = PTHREAD_MUTEX_INITIALIZER |
struct XrdFfsQueueTasks * | XrdFfsQueueTaskque_tail = NULL |
unsigned int | XrdFfsQueueWorker_id = 0 |
pthread_mutex_t | XrdFfsQueueWorker_mutex |
unsigned int XrdFfsQueue_count_tasks | ( | ) |
Definition at line 131 of file XrdFfsQueue.cc.
References XrdFfsQueueTasks::id, XrdFfsQueueTaskque_head, XrdFfsQueueTaskque_mutex, and XrdFfsQueueTaskque_tail.
Referenced by XrdFfsPosix_statall().
int XrdFfsQueue_count_workers | ( | ) |
Definition at line 254 of file XrdFfsQueue.cc.
References XrdFfsQueueNworkers, and XrdFfsQueueWorker_mutex.
Referenced by XrdFfsMisc_xrd_init().
struct XrdFfsQueueTasks* XrdFfsQueue_create_task | ( | void *(*)(void *) | func, |
void ** | args, | ||
short | initstat | ||
) |
Definition at line 97 of file XrdFfsQueue.cc.
References XrdFfsQueueTasks::args, XrdFfsQueueTasks::cond, XrdFfsQueueTasks::done, XrdFfsQueueTasks::func, XrdFfsQueueTasks::mutex, and XrdFfsQueue_enqueue().
Referenced by XrdFfsPosix_deleteall(), XrdFfsPosix_readdirall(), XrdFfsPosix_statall(), XrdFfsPosix_statvfsall(), and XrdFfsQueue_remove_workers().
int XrdFfsQueue_create_workers | ( | int | n | ) |
Definition at line 192 of file XrdFfsQueue.cc.
References XrdFfsQueueTasks::id, XrdFfsQueue_worker(), XrdFfsQueueNworkers, XrdFfsQueueWorker_id, and XrdFfsQueueWorker_mutex.
Referenced by XrdFfsMisc_xrd_init().
struct XrdFfsQueueTasks* XrdFfsQueue_dequeue | ( | ) |
Definition at line 70 of file XrdFfsQueue.cc.
References XrdFfsQueueTasks::next, XrdFfsQueueTasks::prev, XrdFfsQueueTaskque_cond, XrdFfsQueueTaskque_head, XrdFfsQueueTaskque_mutex, and XrdFfsQueueTaskque_tail.
Referenced by XrdFfsQueue_worker().
void XrdFfsQueue_enqueue | ( | struct XrdFfsQueueTasks * | task | ) |
Definition at line 45 of file XrdFfsQueue.cc.
References XrdFfsQueueTasks::id, XrdFfsQueueTasks::next, XrdFfsQueueTasks::prev, XrdFfsQueueNext_task_id, XrdFfsQueueTaskque_cond, XrdFfsQueueTaskque_head, XrdFfsQueueTaskque_mutex, and XrdFfsQueueTaskque_tail.
Referenced by XrdFfsQueue_create_task().
void XrdFfsQueue_free_task | ( | struct XrdFfsQueueTasks * | task | ) |
Definition at line 111 of file XrdFfsQueue.cc.
References XrdFfsQueueTasks::args, XrdFfsQueueTasks::cond, XrdFfsQueueTasks::func, XrdFfsQueueTasks::mutex, XrdFfsQueueTasks::next, and XrdFfsQueueTasks::prev.
Referenced by XrdFfsQueue_remove_workers().
int XrdFfsQueue_remove_workers | ( | int | n | ) |
Definition at line 229 of file XrdFfsQueue.cc.
References XrdFfsQueue_create_task(), XrdFfsQueue_free_task(), XrdFfsQueue_wait_task(), XrdFfsQueueNworkers, and XrdFfsQueueWorker_mutex.
void XrdFfsQueue_wait_task | ( | struct XrdFfsQueueTasks * | task | ) |
Definition at line 123 of file XrdFfsQueue.cc.
References XrdFfsQueueTasks::cond, XrdFfsQueueTasks::done, and XrdFfsQueueTasks::mutex.
Referenced by XrdFfsQueue_remove_workers().
void* XrdFfsQueue_worker | ( | void * | x | ) |
Definition at line 154 of file XrdFfsQueue.cc.
References XrdFfsQueueTasks::args, XrdFfsQueueTasks::cond, XrdFfsQueueTasks::done, XrdFfsQueueTasks::func, XrdFfsQueueTasks::id, XrdFfsQueueTasks::mutex, and XrdFfsQueue_dequeue().
Referenced by XrdFfsQueue_create_workers().
unsigned int XrdFfsQueueNext_task_id = 0 |
Definition at line 41 of file XrdFfsQueue.cc.
Referenced by XrdFfsQueue_enqueue().
unsigned short XrdFfsQueueNworkers = 0 |
Definition at line 189 of file XrdFfsQueue.cc.
Referenced by XrdFfsQueue_count_workers(), XrdFfsQueue_create_workers(), and XrdFfsQueue_remove_workers().
pthread_cond_t XrdFfsQueueTaskque_cond = PTHREAD_COND_INITIALIZER |
Definition at line 43 of file XrdFfsQueue.cc.
Referenced by XrdFfsQueue_dequeue(), and XrdFfsQueue_enqueue().
struct XrdFfsQueueTasks* XrdFfsQueueTaskque_head = NULL |
Definition at line 39 of file XrdFfsQueue.cc.
Referenced by XrdFfsQueue_count_tasks(), XrdFfsQueue_dequeue(), and XrdFfsQueue_enqueue().
pthread_mutex_t XrdFfsQueueTaskque_mutex = PTHREAD_MUTEX_INITIALIZER |
Definition at line 42 of file XrdFfsQueue.cc.
Referenced by XrdFfsQueue_count_tasks(), XrdFfsQueue_dequeue(), and XrdFfsQueue_enqueue().
struct XrdFfsQueueTasks* XrdFfsQueueTaskque_tail = NULL |
Definition at line 40 of file XrdFfsQueue.cc.
Referenced by XrdFfsQueue_count_tasks(), XrdFfsQueue_dequeue(), and XrdFfsQueue_enqueue().
unsigned int XrdFfsQueueWorker_id = 0 |
Definition at line 190 of file XrdFfsQueue.cc.
Referenced by XrdFfsQueue_create_workers().
pthread_mutex_t XrdFfsQueueWorker_mutex |
Definition at line 188 of file XrdFfsQueue.cc.
Referenced by XrdFfsQueue_count_workers(), XrdFfsQueue_create_workers(), and XrdFfsQueue_remove_workers().