XrdFfsQueue.hh File Reference

#include <stdlib.h>
#include <pthread.h>

Go to the source code of this file.

Classes

struct  XrdFfsQueueTasks

Functions

XrdFfsQueueTasksXrdFfsQueue_create_task (void *(*func)(void *), void **args, short initstat)
void XrdFfsQueue_free_task (struct XrdFfsQueueTasks *task)
void XrdFfsQueue_wait_task (struct XrdFfsQueueTasks *task)
unsigned int XrdFfsQueue_count_tasks ()
int XrdFfsQueue_create_workers (int n)
int XrdFfsQueue_remove_workers (int n)
int XrdFfsQueue_count_workers ()


Function Documentation

unsigned int XrdFfsQueue_count_tasks (  ) 

Definition at line 110 of file XrdFfsQueue.cc.

References XrdFfsQueueTasks::id, int, NULL, pthread_mutex_lock(), pthread_mutex_unlock(), XrdFfsQueueTaskque_head, and XrdFfsQueueTaskque_tail.

int XrdFfsQueue_count_workers (  ) 

Definition at line 226 of file XrdFfsQueue.cc.

References i, pthread_mutex_lock(), and pthread_mutex_unlock().

Referenced by XrdFfsMisc_xrd_init().

struct XrdFfsQueueTasks* XrdFfsQueue_create_task ( void *(*)(void *)  func,
void **  args,
short  initstat 
)

Definition at line 76 of file XrdFfsQueue.cc.

References XrdFfsQueueTasks::args, XrdFfsQueueTasks::cond, XrdFfsQueueTasks::done, XrdFfsQueueTasks::func, malloc(), XrdFfsQueueTasks::mutex, NULL, pthread_cond_init(), pthread_mutex_init(), 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 164 of file XrdFfsQueue.cc.

References free(), i, id, malloc(), NULL, pthread_attr_destroy(), pthread_attr_init(), pthread_attr_setdetachstate(), pthread_attr_setstacksize(), pthread_create(), PTHREAD_CREATE_DETACHED, pthread_detach(), pthread_mutex_lock(), pthread_mutex_unlock(), size_t, and XrdFfsQueue_worker().

Referenced by XrdPssSys::Configure(), and XrdFfsMisc_xrd_init().

void XrdFfsQueue_free_task ( struct XrdFfsQueueTasks task  ) 

Definition at line 90 of file XrdFfsQueue.cc.

References XrdFfsQueueTasks::args, XrdFfsQueueTasks::cond, free(), XrdFfsQueueTasks::func, XrdFfsQueueTasks::mutex, XrdFfsQueueTasks::next, NULL, XrdFfsQueueTasks::prev, pthread_cond_destroy(), and pthread_mutex_destroy().

Referenced by XrdFfsQueue_remove_workers().

int XrdFfsQueue_remove_workers ( int  n  ) 

Definition at line 201 of file XrdFfsQueue.cc.

References i, NULL, pthread_mutex_lock(), pthread_mutex_unlock(), XrdFfsQueue_create_task(), XrdFfsQueue_free_task(), and XrdFfsQueue_wait_task().

void XrdFfsQueue_wait_task ( struct XrdFfsQueueTasks task  ) 

Definition at line 102 of file XrdFfsQueue.cc.

References XrdFfsQueueTasks::cond, XrdFfsQueueTasks::done, XrdFfsQueueTasks::mutex, pthread_cond_wait(), pthread_mutex_lock(), and pthread_mutex_unlock().

Referenced by XrdFfsQueue_remove_workers().


Generated on Tue Jul 5 16:08:06 2011 for ROOT_528-00b_version by  doxygen 1.5.1