Skip to main content

A platform independent file lock.

Project description

This package contains a single module, which implements a platform independent file lock in Python.

The lock includes a lock counter and is thread safe. This means, when locking the same lock object twice, it will not block.

import filelock

lock = filelock.FileLock("my_lock_file")

with lock:
        pass

try:
        with lock.acquire(timeout = 10):
                pass
except filelock.Timeout:
        pass

What this filelock is not

A filelock provides a synchronisation mechanism between different instances of your application, similar to a thread lock. It can be used to signalize that files, directories or other resources are currently used or manipulated (Think of a sync.lock file). Only the existence of the lockfile is watched for this purpose. The file itself can not be written and is always empty.

Perhaps you are looking for something like

Documentation

The full documentation is available on readthedocs.org.

Contributions

Contributions are always welcome. Never hesitate to open a new issue.

License

This package is public domain.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page