共享对象协议

时间:2010-10-04 01:49:19

标签: multithreading multiprocessing

我想知道是否有人对线程或进程之间(通过共享内存段)共享数据有一些想法或反馈。我正在考虑通过线程/处理一些所有权对象(通过管道/同步队列)。唯一可以访问数据的线程是拥有该对象(或内存区域)所有权的线程。如果一个线程想要访问其他地方拥有的对象,那么它会获得异常或阻塞。知道如何干净地实施这个协议吗?

1 个答案:

答案 0 :(得分:1)

如果您可以扩展您的可能语言以包含C ++,Boost.Interprocess支持可移植共享内存。

您应该能够通过将其与condition variable in Boost.Thread结合使用来实现您描述的阻止。