我必须将N个客户端进程与一个服务器同步.这些进程由一个main函数分叉,我在其中声明了3个信号量.我决定使用POSIX信号量,但我不知道如何在这些进程之间共享它们.我认为共享内存应该正常工作,但我有一些问题:
sizeof(sem_t)在size_t字段中shmget使用以便准确分配我需要的空间吗?假设我创建了一个信号量.如果我分叉一堆子进程,它们还会使用相同的信号量吗?
另外,假设我创建了一个内部和分叉信号量的结构.所有子进程是否仍然使用相同的信号量?如果没有,将结构+信号量存储在共享内存中是否允许子进程使用相同的信号量?
我真的很困惑我的分叉子进程如何使用相同的信号量.