如果我们想在线程/进程之间共享锁,我们能否在共享文件描述符上同时使用 fcntl
锁定和 flock
锁定(不同时)?
最佳答案
fcntl
锁是每个进程的锁。因此,您不能在进程之间“共享锁”,但可以在一个进程的线程之间“共享锁”。
flock
锁是每个文件表条目。因此,如果一个进程打开一个文件,然后 fork
多次,则每个进程的文件描述符副本将操作同一个锁。 (不过,我认为这不是一个非常有用的功能。)
关于c - 共享文件描述符上的共享锁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11727260/