/********************************************************
* An example source module to accompany...
*
* "Using POSIX Threads: Programming with Pthreads"
* by Brad nichols, Dick Buttlar, Jackie Farrell
* O'Reilly & Associates, Inc.
*
********************************************************
* rdwr.h --
*
* Modified by Matt Massie April 2001
*
* Include file for reader/writer locks
*
*/
#ifndef __RDWR_H
#define __RDWR_H
#include "pthread.h"
typedef struct rdwr_var
{
int readers_reading;
int writer_writing;
pthread_mutex_t mutex;
pthread_cond_t lock_free;
}
pthread_rdwr_t;
typedef void *pthread_rdwrattr_t;
int pthread_rdwr_init_np (pthread_rdwr_t * rdwrp);
int pthread_rdwr_rlock_np (pthread_rdwr_t * rdwrp);
int pthread_rdwr_runlock_np (pthread_rdwr_t * rdwrp);
int pthread_rdwr_wlock_np (pthread_rdwr_t * rdwrp);
int pthread_rdwr_wunlock_np (pthread_rdwr_t * rdwrp);
#endif /* __RDWR_H */
syntax highlighted by Code2HTML, v. 0.9.1