portalocker 0.3
Wraps the portalocker recipe for easy usage
Overview
Portalocker is a library to provide an easy API to file locking.
Originally created as a Python Recipe by Jonathan Feinberg and Lowell Alleman http://code.activestate.com/recipes/65203-portalocker-cross-platform-posixnt-api-for-flock-s/
Examples
To make sure your cache generation scripts don't race, use the Lock class:
>>> import portalocker
>>> with portalocker.Lock('somefile', timeout=1) as fh:
print >>fh, 'writing some stuff to my cache...'
To lock a file exclusively, use the lock method:
>>> import portalocker
>>> file = open('somefile', 'r+')
>>> portalocker.lock(file, portalocker.LOCK_EX)
>>> file.seek(12)
>>> file.write('foo')
>>> file.close()
There is no explicit need to unlock the file as it is automatically unlocked after file.close(). If you still feel the need to manually unlock a file than you can do it like this:
>>> portalocker.unlock(file)
Do note that your data might still be in a buffer so it is possible that your data is not available until you flush() or close().
Contact
The module is maintaned by Rick van Hattem <Rick.van.Hattem@Fawo.nl>. The project resides at https://github.com/WoLpH/portalocker . Bugs and feature requests can be submitted there. Patches are also very welcome.
Changelog
See CHANGELOG file
License
see the LICENSE file
| File | Type | Py Version | Uploaded on | Size | # downloads |
|---|---|---|---|---|---|
| portalocker-0.3.tar.gz (md5) | Source | 2011-02-23 | 6KB | 981 | |
- Author: Rick van Hattem
- Home Page: https://github.com/WoLpH/portalocker
- Keywords: locking,locks,with statement,windows,linux,unix
- License: PSF
- Platform: any
-
Categories
- Development Status :: 4 - Beta
- Intended Audience :: Developers
- License :: OSI Approved :: Python Software Foundation License
- Operating System :: MacOS :: MacOS X
- Operating System :: Microsoft :: Windows :: Windows NT/2000
- Operating System :: POSIX
- Operating System :: POSIX :: BSD
- Operating System :: POSIX :: BSD :: FreeBSD
- Operating System :: POSIX :: Linux
- Programming Language :: Python
- Programming Language :: Python :: 2.5
- Programming Language :: Python :: 2.6
- Programming Language :: Python :: 2.7
- Programming Language :: Python :: 3
- Programming Language :: Python :: 3.0
- Programming Language :: Python :: 3.1
- Topic :: Software Development :: Libraries :: Python Modules
- Package Index Owner: WoLpH
- DOAP record: portalocker-0.3.xml
