2014-07-22 50 views
0

我编写了两个简单的进程 - 共享相同内存的客户机和服务器(在C++ - LINUX中),一个写入它,另一个只读取它。 (把代码从这个网站:如何在共享内存中使用信号量

http://www.cs.cf.ac.uk/Dave/C/node27.html#SECTION002730000000000000000

问题: 我需要确保的是,第二过程不会从某行/地址,而读另一个进程正在写入(但可以从其他线/地址读取)

例如,如果“服务器”正在写入第10-15行,则“客户端”无法访问tho se线,但它可以从其余的线读取。

我知道我需要使用信号灯,但我不知道如何将它与共享存储结合起来。 任何示例代码/有关如何使用信号量的帮助?

注:我使用SystemV IPC而不是POSIX。

在此先感谢

回答