文件与互斥锁同步

时间:2012-01-31 15:37:04

标签: c file concurrency mutex

在C(Linux和Windows)中如果我想管理一个完美的"并发文件访问 喜欢:

  1. A打开一个文件并开始写一些东西
  2. B同时打开同一个文件并等待A结束其工作
  3. A关闭文件。
  4. B现在可以写了。
  5. ......依旧......
  6. 您认为我必须使用互斥锁吗? O_EXCL也应该工作吗? 更好的选择?

2 个答案:

答案 0 :(得分:1)

是A和B线程还是程序?

如果它们是单独的程序,最好只让一个文件打开以便立即写入,即使你设法同步两个应用程序之间的访问,你必须非常小心冲洗缓冲区以确保它们确实在你期望的状态。

答案 1 :(得分:1)

如果A和B是不同的线程,则可以使用互斥锁或信号量来实现它们之间的同步。您可以在http://www.yolinux.com/TUTORIALS/LinuxTutorialPosixThreads.html

找到有关互斥文本的更多信息