python文件加锁

来源:互联网 发布:python 数组截断 编辑:程序博客网 时间:2024/06/08 06:12
首先要引入库
import fcntl
打开一个文件
f = open('./test')
对该文件加密:
fcntl.flock(f, fcntl.LOCK_EX)
这样就对文件test加锁了,如果有其他进程要对test进行加锁,则不能成功,会被阻塞,但不会退出程序。
解锁:
fcntl.flock(f,fcntl.LOCK_UN)
解锁后,其他进程就可以对该文件进行加锁了。
另外还有一种共享锁:acquire a shared lock

fcntl.flock(f,fcntl.LOCK_SH)


文件加锁捕捉异常

  1 #!/usr/bin/env python  2 #coding:utf-8  3 """  4 文件锁测试  5 """  6   7 import fcntl  8 import time  9  10 try: 11     fp = open('_filelock','w') 12     fcntl.flock(fp.fileno(), fcntl.LOCK_EX | fcntl.LOCK_NB) 13     print '文件锁开始执行' 14     time.sleep(50) 15     fp.close() 16 except IOError: 17     print "lock"


原创粉丝点击