Commits

Anonymous committed c2ff216

Module to lock open files using fcntl()

Comments (0)

Files changed (2)

Lib/lib-old/lockfile.py

+import struct, fcntl, FCNTL
+
+def writelock(f):
+	_lock(f, FCNTL.F_WRLCK)
+
+def readlock(f):
+	_lock(f, FCNTL.F_RDLCK)
+
+def unlock(f):
+	_lock(f, FCNTL.F_UNLCK)
+
+def _lock(f, op):
+	dummy = fcntl.fcntl(f.fileno(), FCNTL.F_SETLKW,
+			    struct.pack('2h8l', op,
+					0, 0, 0, 0, 0, 0, 0, 0, 0))
+import struct, fcntl, FCNTL
+
+def writelock(f):
+	_lock(f, FCNTL.F_WRLCK)
+
+def readlock(f):
+	_lock(f, FCNTL.F_RDLCK)
+
+def unlock(f):
+	_lock(f, FCNTL.F_UNLCK)
+
+def _lock(f, op):
+	dummy = fcntl.fcntl(f.fileno(), FCNTL.F_SETLKW,
+			    struct.pack('2h8l', op,
+					0, 0, 0, 0, 0, 0, 0, 0, 0))