File: //usr/local/lib/python3.10/test/__pycache__/lock_tests.cpython-310.opt-2.pyc
o
�i�x � @ s2 d dl Z d dlZd dlZd dlZd dlmZmZ d dlZd dlZd dl Z d dl
mZ d dlm
Z
e�ee d�d�Zdd� ZG d d
� d
e�ZG dd� dej�ZG d
d� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZdS )� N)�start_new_thread�TIMEOUT_MAX)�support)�threading_helper�forkz9platform doesn't support fork (no _at_fork_reinit method)c C s t �d� d S )N�{�G�z�?)�time�sleep� r
r
�,/usr/local/lib/python3.10/test/lock_tests.py�_wait s r c @ s0 e Zd Z ddd�Zdd� Zdd� Zdd � Zd
S )�BunchFc sr � �_ |�_g �_g �_| �_t�� �_�j�� � �fdd�}zt |�D ]}t
|d� q'W d S d�_� )Nc sd t �� } �j�| � z� � W �j�| � �js t� �jrd S d S �j�| � �js1t� �jr+w �N)� threading� get_ident�started�append�finished� _can_exitr )�tid��f�selfr
r �task- s ���zBunch.__init__.<locals>.taskr
T)r �nr r r r �wait_threads_exit�wait_thread� __enter__�ranger )r r r Zwait_before_exitr �ir
r r �__init__ s
�zBunch.__init__c C s. t | j�| jk rt� t | j�| jk sd S d S r )�lenr r r �r r
r
r �wait_for_started>