File: D:/Python311/Lib/test/test_importlib/__pycache__/test_locks.cpython-311.pyc
�
��Vc� � � � d dl mZ ej d� � Zd dlZd dlZd dlZd dlZd dl m
Z
d dlmZ d dl m
Z
ej d�� � G d � d
� � Zd� e� � � D � � Z ej ee
j e�� � \ ZZ G d
� d� � Zd� e� � � D � � Z ej eee�� � \ ZZ G d� d� � Z ej ee�� � \ ZZd� Zedk r ej � � dS dS )� )�util� importlibN)�support)�threading_helper)�
lock_testsT)�modulec �F � e Zd Z ed� � � ZdZdZdZdZdZ dZ
dZdZdS )�ModuleLockAsRLockTestsc �, � | � d� � S )N� some_lock��LockType)�clss �2D:\Python311\Lib\test\test_importlib\test_locks.py�<lambda>zModuleLockAsRLockTests.<lambda> s � �s�|�|�K�'@�'@� � N)
�__name__�
__module__�__qualname__�classmethod�locktype�test__is_owned�test_try_acquire�test_try_acquire_contended� test_with�test_timeout�test_release_save_unacquired� test_repr�test_locked_repr� r r r
r
sQ � � � � � ��{�@�@�A�A�H� �N���!%���I��L�#'� ��I����r r
c �. � i | ]\ }}||j j ��S r )�
_bootstrap�_ModuleLock��.0�kind� splitinits r �
<dictcomp>r( $ s4 � � 3� 3� 3�!�$� � �I�(�4� 3� 3� 3r r
c �, � e Zd Zd� Zd� Zd� Zd� Zd� ZdS )�DeadlockAvoidanceTestsc � � t j � � | _ t j d� � d S # t
$ r d | _ Y d S w xY w)Ng���ư>)�sys�getswitchinterval�old_switchintervalr �setswitchinterval�AttributeError��selfs r �setUpzDeadlockAvoidanceTests.setUp/ s[ � � +�&)�&;�&=�&=�D�#��%�h�/�/�/�/�/��� +� +� +�&*�D�#�#�#�#� +���s �,0 �A�Ac �J � | j �t j | j � � d S d S �N)r. r, r/ r1 s r �tearDownzDeadlockAvoidanceTests.tearDown6 s1 � ��"� ;��!�$�"9�:�:�:�:�:� ;� ;r c �t � ������ � d�� fd�t �� � D � � ���fd�t �� � D � � �|r�}n�dz
}t j |� � �g � � fd������ fd�}t j ||� � � � � � � t � � � |� � � S )N�
c �T �� g | ]$}�� t |� � � � ��%S r )r �str)r% �ir2 s �r �
<listcomp>zFDeadlockAvoidanceTests.run_deadlock_avoidance_test.<locals>.<listcomp><