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

📄 semaphore.h

📁 这是unix网络编程一书的源代码希望能对大家的学习提供一种便利
💻 H
字号:
/* include semaphoreh */
	/* 4the fundamental datatype */
typedef struct {
  pthread_mutex_t	sem_mutex;	/* lock to test and set semaphore value */
  pthread_cond_t	sem_cond;	/* for transition from 0 to nonzero */
  unsigned int		sem_count;	/* the actual semaphore value */
  int				sem_magic;	/* magic number if open */
} mysem_t;

#define	SEM_MAGIC	0x67458923

#ifdef	SEM_FAILED
#undef	SEM_FAILED
#define	SEM_FAILED	((mysem_t *)(-1))	/* avoid compiler warnings */
#endif
/* end semaphoreh */

	/* 4our functions */
int		 mysem_close(mysem_t *);
int		 mysem_getvalue(mysem_t *, int *);
mysem_t	*mysem_open(const char *, int, ... );
int		 mysem_post(mysem_t *);
int		 mysem_trywait(mysem_t *);
int		 mysem_unlink(const char *);
int		 mysem_wait(mysem_t *);

	/* 4and the corresponding wrapper functions */
void	 Mysem_close(mysem_t *);
void	 Mysem_getvalue(mysem_t *, int *);
mysem_t	*Mysem_open(const char *, int, ... );
void	 Mysem_post(mysem_t *);
int		 Mysem_trywait(mysem_t *);
void	 Mysem_unlink(const char *);
void	 Mysem_wait(mysem_t *);

⌨️ 快捷键说明

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