【发布时间】:2012-07-30 18:20:43
【问题描述】:
如果我们想在线程/进程之间共享锁,我们能否在共享文件描述符上同时使用fcntl 锁定和flock 锁定(不能同时)?
【问题讨论】:
-
你说的共享一把锁是什么意思?
标签: c linux locking file-locking
如果我们想在线程/进程之间共享锁,我们能否在共享文件描述符上同时使用fcntl 锁定和flock 锁定(不能同时)?
【问题讨论】:
标签: c linux locking file-locking
fcntl 锁是每个进程的锁。所以你不能在进程之间“共享锁”,但你可以在一个进程的线程之间。
flock 锁是每个文件的表条目。因此,如果一个进程打开一个文件,然后forks 多次,每个进程的文件描述符副本将操纵相同的锁。 (不过,我认为这不是一个非常有用的功能。)
【讨论】: