Metadata-Version: 2.1
Name: combo-lock
Version: 0.1.2
Summary: A combined process and thread lock
Home-page: https://github.com/forslund/combo-lock
Author: Åke Forslund, JarbasAI
Author-email: ake.forslund@gmail.com, jarbasai@mailfence.com
License: Apache-2.0
Description: # Combo Lock
        
        The combo-lock is a combination of a process lock and a thread lock. Usable in cases both multiple threads and multiple processes are sharing the same resource such as a file in the file system.
        
        The module utilizes the InterProcessLock from [fasteners](https://pypi.org/project/fasteners/) and the standard *Lock* from threading.
        
        The InterProcessLock uses a filesystem lock so the initialization of the class requires a path for the lock file.
        
        ## Example
        
        ```python
        from combo_lock import ComboLock
        
        lock = ComboLock('/tmp/my.lock')
        
        with lock:
            write_my_shared_resource()
        
        
        ```
        
        A `NamedLock` will save the lock file to shared memory using [memory-tempfile](https://github.com/mbello/memory-tempfile)
        
        ```python
        from combo_lock import NamedLock
        
        lock = NamedLock('some_name')
        
        with lock:
            write_my_shared_resource()
        ```
        
        ### History
        
        The combo-lock was originally created for [Mycroft-core](https://github.com/mycroftai/mycroft-core) but as it's been useful in other projects a separate release seemed appropriate.
        
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Description-Content-Type: text/markdown
