semget失败错误号22

我在执行这么一句简单的程序时出错,错误号22
g_semid = semget(123, 10, 0666|IPC_CREAT)
把第二个参数改成1就可以了,其它大于1的都不行。这是什么原因?

作者: bucher   发布时间: 2011-06-14

先看一下 123 key 的 信号量,先删除它。
if((semid=semget(key,nsem,0600|IPC_EXCL|IPC_CREAT))==-1) {
                 if(errno==EEXIST)
                        semid=semget(key,nsem,0);

  }
}

作者: wenlq   发布时间: 2011-06-14