semctl()函数


semctl()  函数是控制信号量(集合)时使用的,不过最常用的是删除它。


Linux中的原型是:

int semctl(int semid, int semnum, int cmd, ...);

但是在其他的系统上原型可能有变化,

SUSv2 and SUSv3 specify that the final argument to semctl() is optional. However, a
few (mainly older) UNIX implementations (and older versions of glibc) prototyped
semctl() as follows:


int semctl(int semid, int semnum, int cmd, union semun arg);


This meant that the fourth argument was required even in the cases where it is not
actually used (e.g., the IPC_RMID and GETVAL operations described below). For full
portability, we specify a dummy final argument to semctl() in those calls where it is
not required.


所以我们往往定义一个,dummy变量放置在最后一个位置上。




你可能感兴趣的:(linux,unix,cmd)