当前位置: 技术问答>linux和unix
如何在多个进程之间共享一个磁盘文件?
来源: 互联网 发布时间:2016-12-16
本文导语: 本帖最后由 luo6620378xu 于 2011-07-24 21:09:36 编辑 /* 问题是这个样子的: 我在磁盘上面有一个文件供多个进程共享。 就是多个进程对该文件进行写操作。 我需要对这个文件进行加锁? 这个加锁的区域是一个什么范围? 难道我...
/*
问题是这个样子的:
我在磁盘上面有一个文件供多个进程共享。
就是多个进程对该文件进行写操作。
我需要对这个文件进行加锁?
这个加锁的区域是一个什么范围?
难道我从一开始open该文件,
write文件,close文件的整个过程
都要位于临界区中?
如果需要加锁的话。
下面是我的一个思路,不知道可不可行?
将一个互斥锁通过mmap映射到内存,将这个
互斥锁设置为shared属性。之后在多个进程
中对这个互斥锁进行加锁处理。
可行吗?
*/
|
fcntl 读写锁应该比较适合
|
如果保证写的区域不重叠,不要锁;有重叠的话,给write加锁即可