<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>

]                 @   s   d  d d d d g Z  d d l Z d d l Z d d l m Z d d	 l m Z d d
 l m Z d d l m Z Gd d   d e	  Z
 Gd d   d e	  Z Gd d    d   Z Gd d   d e  Z Gd d   d e  Z e j s e Z e  j d  d S)QueuePriorityQueue	LifoQueue	QueueFull
QueueEmpty    N   )compat)events)locks)	coroutinec               @   s   e  Z d  Z d S)r   N)__name__
__module____qualname__ r   r   +/opt/alt/python35/lib64/python3.5/queues.pyr      s   c               @   s   e  Z d  Z d S)r   N)r   r   r   r   r   r   r   r      s   c               @   s	  e  Z d  Z d d d d d Z d d   Z d d	   Z d
 d   Z d d   Z d d   Z d d   Z	 d d   Z
 d d   Z e d d    Z d d   Z d d   Z e d d    Z d d   Z e d  d!    Z d" d#   Z d$ d%   Z e d& d'    Z d S)(r   r   loopNc            C   s   | d  k r t  j   |  _ n	 | |  _ | |  _ t j   |  _ t j   |  _ d |  _ t	 j
 d |  j  |  _ |  j j   |  j |  d  S)Nr   r   )r	   Zget_event_loop_loop_maxsizecollectionsdeque_getters_putters_unfinished_tasksr
   Event	_finishedset_init)selfmaxsizer   r   r   r   __init__(   s    			zQueue.__init__c             C   s   t  j   |  _ d  S)N)r   r   _queue)r   r   r   r   r   r   :   s    zQueue._initc             C   s   |  j  j   S)N)r    popleft)r   r   r   r   _get=   s    z
Queue._getc             C   s   |  j  j |  d  S)N)r    append)r   itemr   r   r   _put@   s    z
Queue._putc             C   s7   x0 | r2 | j    } | j   s | j d   Pq Wd  S)N)r!   done
set_result)r   waiterswaiterr   r   r   _wakeup_nextE   s
    	zQueue._wakeup_nextc             C   s(   d j  t |   j t |   |  j    S)Nz<{} at {:#x} {}>)formattyper   id_format)r   r   r   r   __repr__M   s    zQueue.__repr__c             C   s   d j  t |   j |  j    S)Nz<{} {}>)r+   r,   r   r.   )r   r   r   r   __str__Q   s    zQueue.__str__c             C   s   d j  |  j  } t |  d d   r@ | d j  t |  j   7} |  j re | d j  t |  j   7} |  j r | d j  t |  j   7} |  j r | d j  |  j  7} | S)Nzmaxsize={!r}r    z _queue={!r}z _getters[{}]z _putters[{}]z	 tasks={})	r+   r   getattrlistr    r   lenr   r   )r   resultr   r   r   r.   T   s    			zQueue._formatc             C   s   t  |  j  S)N)r3   r    )r   r   r   r   qsize`   s    zQueue.qsizec             C   s   |  j  S)N)r   )r   r   r   r   r   d   s    zQueue.maxsizec             C   s   |  j  S)N)r    )r   r   r   r   emptyi   s    zQueue.emptyc             C   s*   |  j  d k r d S|  j   |  j  k Sd  S)Nr   F)r   r5   )r   r   r   r   fullm   s    z
Queue.fullc          	   c   s   x~ |  j    r |  j j   } |  j j |  y | Ed  HWq | j   |  j    ru | j   ru |  j |  j    Yq Xq W|  j |  S)N)	r7   r   create_futurer   r#   cancel	cancelledr*   
put_nowait)r   r$   Zputterr   r   r   putx   s    	
z	Queue.putc             C   sO   |  j    r t  |  j |  |  j d 7_ |  j j   |  j |  j  d  S)Nr   )r7   r   r%   r   r   clearr*   r   )r   r$   r   r   r   r;      s    zQueue.put_nowaitc          	   c   s   x~ |  j    r |  j j   } |  j j |  y | Ed  HWq | j   |  j    ru | j   ru |  j |  j    Yq Xq W|  j   S)N)	r6   r   r8   r   r#   r9   r:   r*   
get_nowait)r   getterr   r   r   get   s    
z	Queue.getc             C   s2   |  j    r t  |  j   } |  j |  j  | S)N)r6   r   r"   r*   r   )r   r$   r   r   r   r>      s
    zQueue.get_nowaitc             C   sJ   |  j  d k r t d   |  j  d 8_  |  j  d k rF |  j j   d  S)Nr   z!task_done() called too many timesr   )r   
ValueErrorr   r   )r   r   r   r   	task_done   s
    zQueue.task_donec             c   s%   |  j  d k r! |  j j   Ed  Hd  S)Nr   )r   r   wait)r   r   r   r   join   s    	z
Queue.join)r   r   r   r   r   r"   r%   r*   r/   r0   r.   r5   propertyr   r6   r7   r   r<   r;   r@   r>   rB   rD   r   r   r   r   r      s$   c               @   s@   e  Z d  Z d d   Z e j d d  Z e j d d  Z d S)r   c             C   s   g  |  _  d  S)N)r    )r   r   r   r   r   r      s    zPriorityQueue._initc             C   s   | |  j  |  d  S)N)r    )r   r$   heappushr   r   r   r%      s    zPriorityQueue._putc             C   s   | |  j   S)N)r    )r   heappopr   r   r   r"      s    zPriorityQueue._getN)	r   r   r   r   heapqrF   r%   rG   r"   r   r   r   r   r      s   c               @   s4   e  Z d  Z d d   Z d d   Z d d   Z d S)r   c             C   s   g  |  _  d  S)N)r    )r   r   r   r   r   r      s    zLifoQueue._initc             C   s   |  j  j |  d  S)N)r    r#   )r   r$   r   r   r   r%      s    zLifoQueue._putc             C   s   |  j  j   S)N)r    pop)r   r   r   r   r"      s    zLifoQueue._getN)r   r   r   r   r%   r"   r   r   r   r   r      s   JoinableQueue)__all__r   rH    r   r	   r
   Z
coroutinesr   	Exceptionr   r   r   r   r   ZPY35rJ   r#   r   r   r   r   <module>   s   	