File: //usr/lib/python3/dist-packages/filelock/__pycache__/_unix.cpython-310.pyc
o
;�b* � @ s� d dl mZ d dlZd dlZd dlmZ ddlmZ dZej dkr*G dd � d e�Z
nzd dlZW n ey9 Y nw d
ZG dd � d e�Z
dd gZ
dS )
� )�annotationsN)�cast� )�BaseFileLockF�win32c @ �$ e Zd ZdZd dd�Zd dd�ZdS )
�UnixFileLock�HUses the :func:`fcntl.flock` to hard lock the lock file on unix systems.�return�Nonec C � t ��N��NotImplementedError��self� r �0/usr/lib/python3/dist-packages/filelock/_unix.py�_acquire � �UnixFileLock._acquirec C r r
r r r r r �_release r �UnixFileLock._releaseN�r
r ��__name__�
__module__�__qualname__�__doc__r r r r r r r
s
r Tc @ r )
r r r
r c C sb t jt jB t jB }t �| j|�}zt�|tjtj B � W n t
y+ t �|� Y d S w || _d S r
)
�os�O_RDWR�O_CREAT�O_TRUNC�open�
_lock_file�fcntl�flock�LOCK_EX�LOCK_NB�OSError�close�
_lock_file_fd)r � open_mode�fdr r r r ! s �
r c C s. t t| j�}d | _t�|tj� t�|� d S r
)r �intr+ r% r&