信号量semget方法return取值确认

Semaphore semget method return value confirmation

我想使用相同的密钥获得相同的 semId。 虽然,我使用相同的键调用了 semget 方法,并返回了不同的 semId.

请回答我出现这个问题的原因。

示例来源:

int id1, id2;
int semflg = IPC_CREAT | 0666;
id1 = semget(0, 1, semflg);
id2 = semget(0, 1, semflg);

结果:id1 != id2

密钥 ID 0IPC_PRIVATE,并且将始终生成一组新的信号量。选择一个有效的密钥。