【发布时间】:2011-07-14 17:51:17
【问题描述】:
我似乎遇到了 boost::interprocess::file_lock 的问题
我有本质上是过程 1
boost::interprocess::file_lock test_lock("testfile.csv");
test_lock.lock();
sleep(1000);
test_lock.unlock();
当我在第一个进程休眠时运行第二个进程时,我发现我仍然能够读取 testfile.csv。更糟糕的是,我什至可以覆盖它。
我是否误解了 file_lock 的工作原理?我的印象是调用 .lock() 会为其提供对文件的独占锁定,并阻止任何其他进程读取/修改文件。
【问题讨论】:
标签: c++ boost file-io locking interprocess