命名和未命名的posix信号量

时间:2012-08-03 02:55:24

标签: posix semaphore

计划使用posix信号量来同步2个进程。不太确定使用哪个 - 命名或未命名。

每种优缺点有哪些?我该如何决定使用哪个?在哪种情况下,哪一种比另一种更可取?

感谢。

1 个答案:

答案 0 :(得分:3)

如果两个进程不相关,则应使用命名信号量。如果这两个进程是相关的(即分叉),或者如果你只是在线程之间使用信号量,那么你应该使用未命名的。

未命名的优点是您不必跟踪名称和任何权限,也不必取消链接。并且未命名的信号量可以用作一个简单的全局变量(或在堆上),它们在同一进程的线程之间共享,或者放在共享内存中,在分叉的情况下将由子进程继承过程