yangxiaozhe1 2015-04-21 04:16 采纳率: 100%
浏览 2409
已采纳

linux semget(key,0,0)是什么意思?

semget这样是创建了0个信号量吗?求详细解释,谢谢。怎么看不懂啊,求大神给小白 讲解下,谢谢

  • 写回答

2条回答 默认 最新

  • threenewbee 2015-04-21 08:51
    关注

    int semget(key_t _key ,int _nsems,int _semflg);
    功能:创建一个新的信号量或获取一个已经存在的信号量的键值。
    返回值:成功返回信号量的标识码ID。失败返回-1;
    参数:
    _key 为整型值,用户可以自己设定。有两种情况:
    1. 键值是IPC_PRIVATE,该值通常为0,意思就是创建一个仅能被进程进程给我的信号量。
    2. 键值不是IPC_PRIVATE,我们可以指定键值,例如1234;也可以一个ftok()函数来取得一个唯一的键值。
    _nsems 表示初始化信号量的个数。比如我们要创建一个信号量,则该值为1.,创建2个就是2。
    _semflg :信号量的创建方式或权限。有IPC_CREAT,IPC_EXCL。
    IPC_CREAT如果信号量不存在,则创建一个信号量,否则获取。
    IPC_EXCL只有信号量不存在的时候,新的信号量才建立,否则就产生错误。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 Python安装cvxpy库出问题
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥15 python天天向上类似问题,但没有清零
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 矩阵加法的规则是两个矩阵中对应位置的数的绝对值进行加和
  • ¥15 活动选择题。最多可以参加几个项目?
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题