관리-도구
편집 파일: _windows.cpython-37.pyc
B ���a� � @ s� d dl mZ d dlZd dlZd dlmZ d dlmZ d dlm Z ddl mZ ddlm Z ejd kr|d dlZG d d� de�ZnG dd� dee�ZdgZdS ) � )�annotationsN)�ABC)�ENOENT)�cast� )�BaseFileLock)�raise_on_exist_ro_file�win32c @ s, e Zd ZdZdd�dd�Zdd�dd�ZdS ) �WindowsFileLockzWUses the :func:`msvcrt.locking` function to hard lock the lock file on windows systems.�None)�returnc C s� t | j� tjtjB tjB }yt�| j|�}W n. tk r\ } z|jt krL� W d d }~X Y n<X yt �|t jd� W n tk r� t� |� Y nX || _d S )Nr )r � _lock_file�os�O_RDWR�O_CREAT�O_TRUNC�open�OSError�errnor �msvcrt�lockingZLK_NBLCK�close� _lock_file_fd)�self�mode�fd� exception� r �B/opt/alt/python37/lib/python3.7/site-packages/filelock/_windows.py�_acquire s zWindowsFileLock._acquirec C sV t t| j�}d | _t�|tjd� t�|� yt�| j � W n t k rP Y nX d S )Nr )r �intr r r ZLK_UNLCKr r �remover r )r r r r r �_release&