File: //opt/cppython/lib/python3.8/test/__pycache__/test_threaded_import.cpython-38.opt-2.pyc
U
.D�g�# � @ s� d dl Zd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlm Z d dl
mZmZm
Z
mZmZmZmZmZ dd� Zdd� Zdd d
dd�ZG d
d� d�ZG dd� d�ZG dd� dej�Zedd� �Zedkr�e� dS )� N)�mock)�verbose�run_unittest�TESTFN�reap_threads�forget�unlink�rmtree�
start_threadsc
C s� zvz>t|�d r"dd l}dd l}ndd l}dd l}|�dd�}W n2 tk
rr } z|� |� d �� W 5 d }~X Y nX W 5 |� t�� � t|�| k}|r�|�� X d S )N� r � � )
�append� threading� get_ident�len�set�modulefinder�random� randrange� Exception�with_traceback) �N�done�
done_tasks�errors�finishedr r �x�e� r �8/opt/cppython/lib/python3.8/test/test_threaded_import.py�task s
&r! c C s t jddd�| �S )Nzos.register_at_forkT)Zcreate)r Zpatch)�funcr r r �mock_register_at_fork) s r# zaif 1:
import time
time.sleep(%(delay)s)
x = 'a'
import C
zaif 1:
import time
time.sleep(%(delay)s)
x = 'b'
import D
zimport Bzimport A)�A�B�C�Dc @ s e Zd Zdd� Zddd�ZdS )�Finderc C s d| _ d| _t�� | _d S �Nr )�numcallsr r �Lock�lock��selfr r r �__init__G s zFinder.__init__Nc C s>