File: //lib64/python3.6/__pycache__/_dummy_thread.cpython-36.opt-2.pyc
3
  \�  �               @   st   d ddddddgZ dZeZi fd	d�Zd
d� Zdd� Zdd� Zddd�Zdd� Z	G dd� de
�Zdada
dd� Zd
S )�error�start_new_thread�exit�	get_ident�
allocate_lock�interrupt_main�LockType�   �   c             C   s�   t |�t t� �krtd��t |�t t� �kr4td��day| ||� W n. tk
rZ   Y n   dd l}|j�  Y nX datr�dat	�d S )Nz2nd arg must be a tuplez3rd arg must be a dictF�    T)
�type�tuple�	TypeError�dict�_main�
SystemExit�	traceback�	print_exc�
_interrupt�KeyboardInterrupt)Zfunction�args�kwargsr   � r   �%/usr/lib64/python3.6/_dummy_thread.pyr      s     
c               C   s   t �d S )N)r   r   r   r   r   r   =   s    c               C   s   dS )N�   ���r   r   r   r   r   r   A   s    c               C   s   t � S )N)r   r   r   r   r   r   J   s    Nc             C   s   | d k	rt d��dS )Nz'setting thread stack size not supportedr
   )r   )�sizer   r   r   �
stack_sizeN   s    r   c               C   s   t � S )N)r   r   r   r   r   �
_set_sentinelT   s    r   c               @   sB   e Zd Zdd� Zddd�ZeZdd� Zd	d
� Zdd� Zd
d� Z	dS )r   c             C   s
   d| _ d S )NF)�
locked_status)�selfr   r   r   �__init__c   s    zLockType.__init__Nr   c             C   sH   |d ks|rd| _ dS | j s&d| _ dS |dkr@dd l}|j|� dS d S )NTr
   F)r   �timeZsleep)r   ZwaitflagZtimeoutr!   r   r   r   �acquiref   s    
zLockType.acquirec             C   s   | j �  d S )N)�release)r   �typ�val�tbr   r   r   �__exit__�   s    zLockType.__exit__c             C   s   | j s
t�d| _ dS )NFT)r   r   )r   r   r   r   r#   �   s    zLockType.releasec             C   s   | j S )N)r   )r   r   r   r   �locked�   s    zLockType.lockedc             C   s*   d| j rdnd| jj| jjtt| ��f S )Nz<%s %s.%s object at %s>r(   Zunlocked)r   �	__class__�
__module__�__qualname__�hex�id)r   r   r   r   �__repr__�   s
    zLockType.__repr__r   )Nr   )
�__name__r*   r+   r    r"