共享内存中进程间的屏障实现

Posted

技术标签:

【中文标题】共享内存中进程间的屏障实现【英文标题】:Barrier implementation for inter process in shared memory 【发布时间】:2011-05-26 14:32:53 【问题描述】:

我正在寻找一个进程间障碍实现。进程在共享内存中(即在同一个 ndoe 上)。

进程是 MPI 的。我不想使用 MPI_Barrier 函数,因为所有 MPI 实现的一般策略是主动等待。我希望我的进程在等待期间一直处于休眠状态。

限制:

应该在 C 中,也许在 C++ 中 没有自旋锁,所以它可以使用信号量 Linux 操作系统

我相信它存在数千个障碍实现,但我没有找到任何?!

谢谢

【问题讨论】:

【参考方案1】:

pthread_barrier 是用于屏障的 POSIX API。如果您相应地initialize 它们,它们可能会存在于进程共享内存中。

【讨论】:

听起来很棒!我试试看。【参考方案2】:

您应该查看 Boost。我相信它有一个你可以使用的进程间模块。

【讨论】:

以上是关于共享内存中进程间的屏障实现的主要内容,如果未能解决你的问题,请参考以下文章

linux进程间的通信(C): 共享内存

Windows中利用共享内存来实现不同进程间的通信

进程间通信(共享内存)

进程间的数据共享

Linux进程间通信 共享内存+信号量+简单样例

Linux进程通信 | 共享内存