bai_jimmy

导航

Linux进程通信总结

 

1、信号量

    信号量是一种计数器,可以用来控制多个进程对共享资源的访问。他经常作为一种锁机制,防止某个进程正在访问共享资源时,其他进程也进行访问。

因此,信号量主要作为进程间以及同一进程内不同线程的同步手段

    1)Api

信号量的创建
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/sem.h>
int semget(key_t key, int semnums, int semflag);
参数: key: 所创建、打开信号量集合所使用的key semnums: 信号量集合中信号量的个数 falg: 用函数操作的类型、也可以操作信号量集合的访问权限
返回值:
成功:信号机的IPC标识符(一个正数)
失败:-1, 同事errno会被设置成相应的值

 

posted on 2017-02-04 15:36  bai_jimmy  阅读(154)  评论(0编辑  收藏  举报