共享文件同步(读/写)

时间:2011-06-10 07:28:03

标签: php c linux synchronization read-write

我在PHP代码中写道,它将“fopen”一个文件(让我们称之为TXT)并在那里写入所选的复选框,然后另一个进程(让我们称之为PROC1-在c代码中)需要读取文件(TXT )。

我需要同步它,我的意思是阻止进程(PROC1)读取,而PHP写入共享资源(TXT)。

fopen会照顾它吗?我认为它和open()方法之间存在差异。

或者可能使用pipe(),但正如我所见,它只运行命令而不打开文件..

提前再次感谢..

1 个答案:

答案 0 :(得分:1)

不,fopen不会照顾这个。您可以使用flock来同步对文件的访问权限。

请注意,所有进程在使用之前都必须flock()文件,它取决于平台,但flock()通常是建议锁,这意味着任何人都可以在他们愿意的情况下绕过锁(例如,如果他们忘记了调用flock())