⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rwlock.h

📁 实现了面向多线程应用程序的读写锁
💻 H
字号:
#ifndef	__pthread_rwlock_H
#define	__pthread_rwlock_H

#include <pthread.h>

typedef struct
{
	pthread_mutex_t	rw_mutex;
	pthread_cond_t	rw_condreaders;
	pthread_cond_t	rw_condwriters;
	int	rw_magic;
	int	rw_nwaitreaders;
	int	rw_nwaitwriters;
	int	rw_refcount;
}pthread_rwlock_t;

#define	RW_MAGIC	0x19283746

#define	PTHREAD_RWLOCK_INITIALIZER {PTHREAD_MUTEX_INITIALIZER,\
	PTHREAD_COND_INITIALIZER,PTHREAD_COND_INITIALIZER,RW_MAGIC,0,0,0 }

//	typedef	int	pthread_rwclockattr_t;

int	pthread_rwlock_init(pthread_rwlock_t *rw, int * attr);
int pthread_rwlock_destroy(pthread_rwlock_t *rw);
int	pthread_rwlock_rdlock(pthread_rwlock_t *rw);
int pthread_rwlock_tryrdlock(pthread_rwlock_t *rw);
int pthread_rwlock_trywrlock(pthread_rwlock_t *rw);
int	pthread_rwlock_wrlock(pthread_rwlock_t *rw);
int	pthread_rwlock_unlock(pthread_rwlock_t *rw);

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -