3 c unix macos bash file
根据man页面,以下方法仅支持建议锁定:flock,lockf和fcntl.是否有任何方法可以通过单个进程强制锁定某个文件,例如使用写锁定,以便其他进程无法使用写入权限打开此文件?
man
flock
lockf
fcntl
Die*_*Epp 6
不可以.Unix系列中的操作系统通常不支持强制文件锁定1.这包括Linux,BSD和OS X.
在某些Unix上,如果它们是当前正在运行的可执行映像,则无法打开要写入的文件; open()会失败的ETXTBSY.但是,您可以随时取消链接(删除)文件并创建一个新文件,但没有任何东西可以阻止它.
open()
ETXTBSY
1:这不完全正确,但强制文件锁需要一些工作,强制锁是特定于平台的,而OS X不支持它们.
归档时间:
12 年,10 月 前
查看次数:
949 次
最近记录:
10 年,10 月 前