0

我正在开发一个 NetBSD 系统。

当我从 Richard Stevens 的一本关于 UNIX 编程的书中回忆时,我承认 semget() 调用会为不同的调用返回不同的值,即使是同一个线程也是如此。

我最近碰巧看到一组进程,其中这个 semget() 的不同调用为各自的 IPC 键返回相同的一组值。我看到不同框中的相同过程图像也为 semid 产生相同的值。

所以,我的问题是——无论如何我们可以强制 semget() 表现出这种行为吗?

4

1 回答 1

0

semget 始终返回与指定键关联的信号量。如果您指定相同的键,您将获得相同的信号量。我相信即使使用 netbsd 也必须如此。

int semget(key_t key, int nsems, int semflg);
于 2014-07-31T14:48:54.933 回答