File: //usr/local/lib/python3.7/test/__pycache__/test_dummy_threading.cpython-37.opt-1.pyc
B
��g� � @ sJ d dl mZ d dlZd dlZd dlZG dd� dej�ZedkrFe� � dS )� )�supportNc @ s. e Zd ZG dd� dej�Zdd� Zdd� ZdS )�DummyThreadingTestCasec @ s e Zd Zdd� ZdS )z!DummyThreadingTestCase.TestThreadc C s� d}t jrtd| jd|d� t�� t�� td7 at jrDttd� t�� t �
|� t jrjtd| jd� t�� td8 at jr�t| jdtd� t�� t�� d S ) Nr Ztaskzwill run forZsec� ztasks are runningZdonezis finished.)r �verbose�print�name�sema�acquire�mutex�running�release�timeZsleep)�selfZdelay� r �5/usr/local/lib/python3.7/test/test_dummy_threading.py�run
s$
z%DummyThreadingTestCase.TestThread.runN)�__name__�
__module__�__qualname__r r r r r �
TestThread s r c C s( d| _ tjdd�at�� adag | _d S )N�
� )�valuer )�numtasks�
_threadingZBoundedSemaphorer �RLockr
r �threads)r r r r �setUp$ s
zDummyThreadingTestCase.setUpc C sp x6t | j�D ](}| jd| d�}| j�|� |�� qW tjrFtd� x| jD ]}|� � qNW tjrltd� d S )Nz<thread %d>)r z!waiting for all tasks to completezall tasks done)
�ranger r r �append�startr r r �join)r �i�tr r r �
test_tasks. s z!DummyThreadingTestCase.test_tasksN)r r r r ZThreadr r r$ r r r r r s
r �__main__)
Ztestr ZunittestZdummy_threadingr r
ZTestCaser r �mainr r r r �<module> s 5