首页 > 代码库 > 文件锁
文件锁
LOCK_EX是表示排它锁(Exclude),是独占的,一般用于写操作,而如果换成LOCK_SH(Share)则是共享,多用于读取。有时为了保证多进程对文件的读写都是唯一的,无论读写都进行LOCK_EX的请求。
以下是一段演示程序,名叫flock.pl use Fcntl qw(:flock); use POSIX qw(strftime); open (FD, " > source.txt") or die "$!\n"; flock(FD, LOCK_EX); print "Yeah i get the lock by pid=$$ at ", cur_time(), "\n"; sleep 10; flock(FD, LOCK_UN); print "Oops i lose the lock by pid=$$ at ", cur_time(), "\n"; close FD; sub cur_time { strftime "%H:%M:%S", localtime; }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。