fcntl for Python
今天那里学到的,做笔记如下:
A进程:
from fcntl import *
f=open("/tmp/1.txt","w")
flock(f.fileno(),LOCK_EX|LOCK_NB) #只写LOCK_EX,是阻塞的方式锁文件
B进程:
from fcntl import *
f=open("/tmp/1.txt","w")
flock(f.fileno(),LOCK_EX|LOCK_NB)
引起如下异常,就可以在异常处理中做额外的处理了
IOError: [Errno 35] Resource temporarily unavailable
文件解锁:
flock(f.fileno(),LOCK_UN)
另:
在ASPN找到的,跨win32和unix的文件加锁示例:
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/65203
A进程:
from fcntl import *
f=open("/tmp/1.txt","w")
flock(f.fileno(),LOCK_EX|LOCK_NB) #只写LOCK_EX,是阻塞的方式锁文件
B进程:
from fcntl import *
f=open("/tmp/1.txt","w")
flock(f.fileno(),LOCK_EX|LOCK_NB)
引起如下异常,就可以在异常处理中做额外的处理了
IOError: [Errno 35] Resource temporarily unavailable
文件解锁:
flock(f.fileno(),LOCK_UN)
另:
在ASPN找到的,跨win32和unix的文件加锁示例:
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/65203


0 Comments:
发表评论
<< Home