Wraps the portalocker recipe for easy usage
Portalocker is a library to provide an easy API to file locking.
An important detail to note is that on Linux and Unix systems the locks are
advisory by default. By specifying the
-o mand option to the mount command it
is possible to enable mandatory file locking on Linux. This is generally not
recommended however. For more information about the subject:
The module is currently maintained by Rick van Hattem <Wolph@wol.ph>. The project resides at https://github.com/WoLpH/portalocker . Bugs and feature requests can be submitted there. Patches are also very welcome.
To make sure your cache generation scripts don’t race, use the
>>> import portalocker >>> with portalocker.Lock('somefile', timeout=1) as fh: print >>fh, 'writing some stuff to my cache...'
To customize the opening and locking a manual approach is also possible:
>>> 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
file.close(). If you still feel the need to manually unlock a file
than you can do it like this:
Do note that your data might still be in a buffer so it is possible that your
data is not available until you
More examples can be found in the tests.
See the changelog page.
See the LICENSE file.
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size & hash SHA256 hash help||File type||Python version||Upload date|
|portalocker-1.2.0-py2.py3-none-any.whl (14.7 kB) Copy SHA256 hash SHA256||Wheel||3.5||Mar 8, 2018|
|portalocker-1.2.0.tar.gz (12.8 kB) Copy SHA256 hash SHA256||Source||None||Mar 8, 2018|