version 1.242, 2014/04/29 14:41:43
|
version 1.243, 2014/05/16 11:31:13
|
Line 116
|
Line 116
|
# include <sys/ipc.h> |
# include <sys/ipc.h> |
# include <sys/sem.h> |
# include <sys/sem.h> |
|
|
# ifdef OS2 |
# ifndef __RPLCAS |
# define INCL_DOSSEMAPHORES |
# ifdef OS2 |
# define INCL_DOSMEMMGR |
# define INCL_DOSSEMAPHORES |
# define INCL_DOSERRORS |
# define INCL_DOSMEMMGR |
# include <os2.h> |
# define INCL_DOSERRORS |
|
# include <os2.h> |
|
|
typedef struct _OS2SEM |
typedef struct _OS2SEM |
{ |
{ |
HMTX hmtx; |
HMTX hmtx; |
HEV hev; |
HEV hev; |
ULONG shared; |
ULONG shared; |
ULONG *cnt; |
ULONG *cnt; |
ULONG *nopened; |
ULONG *nopened; |
ULONG allocated; |
ULONG allocated; |
} sem_t; |
} sem_t; |
# else // IPCS_SYSV |
# else // IPCS_SYSV |
typedef struct |
typedef struct |
{ |
{ |
int sem; |
int sem; |
int alloue; |
int alloue; |
unsigned char *path; |
unsigned char *path; |
pid_t pid; |
pid_t pid; |
pthread_t tid; |
pthread_t tid; |
} sem_t; |
} sem_t; |
# endif |
# endif |
|
|
# ifndef SEM_FAILED |
# ifndef SEM_FAILED |
# define SEM_FAILED NULL |
# define SEM_FAILED NULL |
# endif |
# endif |
|
|
# ifndef __RPLCAS |
|
sem_t *sem_open_SysV(const char *nom, int oflag, ...); |
sem_t *sem_open_SysV(const char *nom, int oflag, ...); |
int sem_init_SysV(sem_t *sem, int shared, unsigned int value); |
int sem_init_SysV(sem_t *sem, int shared, unsigned int value); |
int sem_close_SysV(sem_t *sem); |
int sem_close_SysV(sem_t *sem); |