flock - apply or remove an advisory lock on an open file
flock 在一个打开的文件上应用或者去除一个建议性锁.
flock 会关联锁到一个打开文件表入口,所以复制文件描述符会指向同一个锁,使用这些fd中的任何一个都可以修改或者解锁。
解除锁的方式:
1:使用flock 传递LOCK_UN
2:进程退出
3:所有相关的描述符关闭。
注意点:
同一个进程,使用同一个fd,每次加排它锁都会成功。
同一个进程,使用打开的不同fd,每次加排它锁都会失败,除非第一个加的锁释放掉。
对于同一个文件,不能同时有共享锁和排它锁。