Dr Andrew Scott G7VAV

My photo
 
April 2024
Mo Tu We Th Fr Sa Su
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 1 2 3 4 5
6 7 8 9 10 11 12


sem.h
01: /* Copyright (C) 1995-1999, 2000, 2003 Free Software Foundation, Inc.
02:    This file is part of the GNU C Library.
03: 
04:    The GNU C Library is free software; you can redistribute it and/or
05:    modify it under the terms of the GNU Lesser General Public
06:    License as published by the Free Software Foundation; either
07:    version 2.1 of the License, or (at your option) any later version.
08: 
09:    The GNU C Library is distributed in the hope that it will be useful,
10:    but WITHOUT ANY WARRANTY; without even the implied warranty of
11:    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12:    Lesser General Public License for more details.
13: 
14:    You should have received a copy of the GNU Lesser General Public
15:    License along with the GNU C Library; if not, write to the Free
16:    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
17:    02111-1307 USA.  */
18: 
19: #ifndef _SYS_SEM_H
20: #define _SYS_SEM_H      1
21: 
22: #include <features.h>
23: 
24: #define __need_size_t
25: #include <stddef.h>
26: 
27: /* Get common definition of System V style IPC.  */
28: #include <sys/ipc.h>
29: 
30: /* Get system dependent definition of `struct semid_ds' and more.  */
31: #include <bits/sem.h>
32: 
33: #ifdef __USE_GNU
34: # define __need_timespec
35: # include <time.h>
36: #endif
37: 
38: /* The following System V style IPC functions implement a semaphore
39:    handling.  The definition is found in XPG2.  */
40: 
41: /* Structure used for argument to `semop' to describe operations.  */
42: struct sembuf
43: {
44:   unsigned short int sem_num;   /* semaphore number */
45:   short int sem_op;             /* semaphore operation */
46:   short int sem_flg;            /* operation flag */
47: };
48: 
49: 
50: __BEGIN_DECLS
51: 
52: /* Semaphore control operation.  */
53: extern int semctl (int __semid, int __semnum, int __cmd, ...) __THROW;
54: 
55: /* Get semaphore.  */
56: extern int semget (key_t __key, int __nsems, int __semflg) __THROW;
57: 
58: /* Operate on semaphore.  */
59: extern int semop (int __semid, struct sembuf *__sops, size_t __nsops) __THROW;
60: 
61: #ifdef __USE_GNU
62: /* Operate on semaphore with timeout.  */
63: extern int semtimedop (int __semid, struct sembuf *__sops, size_t __nsops,
64:                        __const struct timespec *__timeout) __THROW;
65: #endif
66: 
67: __END_DECLS
68: 
69: #endif /* sys/sem.h */
70: 


for client 18.225.255.134
© Andrew Scott 2006 - 2024,
All Rights Reserved
http://www.andrew-scott.uk/
Andrew Scott
http://www.andrew-scott.co.uk/