HEX
Server: Apache
System: Linux server2.voipitup.com.au 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: posscale (1027)
PHP: 8.2.29
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //opt/saltstack/salt/lib/python3.10/multiprocessing/__pycache__/queues.cpython-310.pyc
o

�N�g�.�@s�gd�ZddlZddlZddlZddlZddlZddlZddlZddlZddl	m
Z
mZddlZddl
mZddl
mZejjZddlmZmZmZmZmZGdd	�d	e�Ze�ZGd
d�de�ZGdd
�d
e�ZdS))�Queue�SimpleQueue�
JoinableQueue�N)�Empty�Full�)�
connection)�context)�debug�info�Finalize�register_after_fork�
is_exitingc@s�eZdZd-dd�Zdd�Zdd�Zdd	�Zd.dd�Zd/dd�Zd/dd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd �Zd!d"�Zd#d$�Zed%d&��Zed'd(��Zed)d*��Zed+d,��ZdS)0rrcCs�|dkr
ddlm}||_tjdd�\|_|_|��|_t	�
�|_tj
dkr*d|_n|��|_|�|�|_d|_|��tj
dkrIt|tj�dSdS)Nrr)�
SEM_VALUE_MAXF�Zduplex�win32)Zsynchronizer�_maxsizer�Pipe�_reader�_writer�Lock�_rlock�os�getpid�_opid�sys�platform�_wlock�BoundedSemaphore�_sem�
_ignore_epipe�_resetr
r�_after_fork��self�maxsize�ctx�r'�</opt/saltstack/salt/lib/python3.10/multiprocessing/queues.py�__init__%s




�zQueue.__init__cCs.t�|�|j|j|j|j|j|j|j|j	fS�N)
r	�assert_spawningr rrrrrrr�r$r'r'r(�__getstate__9s
�zQueue.__getstate__c	Cs0|\|_|_|_|_|_|_|_|_|��dSr*)	r rrrrrrrr!�r$�stater'r'r(�__setstate__>s�zQueue.__setstate__cCstd�|jdd�dS)NzQueue._after_fork()T)�
after_fork)r
r!r,r'r'r(r"CszQueue._after_forkFcCsj|r|j��nt�t���|_t��|_d|_d|_	d|_
d|_d|_|j
j|_|jj|_|jj|_dS�NF)�	_notempty�_at_fork_reinit�	threading�	Conditionr�collections�deque�_buffer�_thread�_jointhread�_joincancelled�_closed�_closer�
send_bytes�_send_bytesr�
recv_bytes�_recv_bytes�poll�_poll)r$r1r'r'r(r!Gs


zQueue._resetTNcCs||jrtd|�d���|j�||�st�|j�|jdur!|��|j�	|�|j�
�Wd�dS1s7wYdS�NzQueue z
 is closed)r=�
ValueErrorr�acquirerr3r:�
_start_threadr9�append�notify�r$�obj�block�timeoutr'r'r(�putVs
"�z	Queue.putcCs�|jrtd|�d���|r.|dur.|j�|��}Wd�n1s#wY|j��n>|r6t��|}|j�||�s?t	�z&|rP|t��}|�
|�sOt	�n|�
�sVt	�|��}|j��W|j��n|j��wt�|�SrE)
r=rFrrBr�release�time�	monotonicrGrrD�_ForkingPickler�loads)r$rMrN�resZdeadliner'r'r(�getbs.
�
�
z	Queue.getcCs|j|jj��Sr*)rr�_semlock�
_get_valuer,r'r'r(�qsize|szQueue.qsizecC�
|��Sr*�rDr,r'r'r(�empty��
zQueue.emptycCs|jj��Sr*)rrW�_is_zeror,r'r'r(�full��z
Queue.fullcCs
|�d�Sr2)rVr,r'r'r(�
get_nowait�r]zQueue.get_nowaitcCs|�|d�Sr2)rO�r$rLr'r'r(�
put_nowait�r`zQueue.put_nowaitcCs$d|_|j}|rd|_|�dSdS)NT)r=r>)r$�closer'r'r(rd�s
�zQueue.closecCs2td�|jsJd�|���|jr|��dSdS)NzQueue.join_thread()zQueue {0!r} not closed)r
r=�formatr;r,r'r'r(�join_thread�s
�zQueue.join_threadcCs4td�d|_z|j��WdStyYdSw)NzQueue.cancel_join_thread()T)r
r<r;�cancel�AttributeErrorr,r'r'r(�cancel_join_thread�s�zQueue.cancel_join_threadcCs�td�|j��tjtj|j|j|j|j	|j
j|jj|j
|j|jf	dd�|_d|j_td�|j��td�|jsKt|jtjt�|j�gdd�|_t|tj|j|jgd	d�|_dS)
NzQueue._start_thread()ZQueueFeederThread)�target�args�nameTzdoing self._thread.start()z... done self._thread.start()���)Zexitpriority�
)r
r9�clearr5�Threadr�_feedr3r@rrrdrr �_on_queue_feeder_errorrr:�daemon�startr<r�_finalize_join�weakref�refr;�_finalize_closer>r,r'r'r(rH�s4
��
�
�zQueue._start_threadcCs6td�|�}|dur|��td�dStd�dS)Nzjoining queue threadz... queue thread joinedz... queue thread already dead)r
�join)Ztwr�threadr'r'r(ru�szQueue._finalize_joincCsDtd�|�|�t�|��Wd�dS1swYdS)Nztelling queue thread to quit)r
rI�	_sentinelrJ)�buffer�notemptyr'r'r(rx�s


"�zQueue._finalize_closec	
Csftd�|j}	|j}
|j}|j}t}
tjdkr|j}|j}nd}	zT|	�z
|s+|�W|
�n|
�wz6	|�}||
urKtd�|�|�WWdSt�	|�}|durY||�n|�z	||�W|�n|�wq6t
ysYnwWn<ty�}z0|r�t|dd�t
jkr�WYd}~dSt�r�td|�WYd}~dS|��|||�WYd}~nd}~wwq!)Nz$starting thread to feed data to piperrz%feeder thread got sentinel -- exiting�errnorzerror in queue thread: %s)r
rGrP�wait�popleftr{rrrS�dumps�
IndexError�	Exception�getattrr~ZEPIPErr)r|r}r?Z	writelockZreader_closeZwriter_closeZignore_epipe�onerrorZ	queue_semZnacquireZnreleaseZnwaitZbpopleft�sentinelZwacquireZwreleaserL�er'r'r(rq�sb
�


��
���zQueue._feedcCsddl}|��dS)z�
        Private API hook called when feeding data in the background thread
        raises an exception.  For overriding by concurrent.futures.
        rN)�	traceback�	print_exc)r�rLr�r'r'r(rrszQueue._on_queue_feeder_error�r)F�TN)�__name__�
__module__�__qualname__r)r-r0r"r!rOrVrYr\r_rarcrdrfrirH�staticmethodrurxrqrrr'r'r'r(r#s2



!
	

>rc@s@eZdZddd�Zdd�Zdd�Zdd
d�Zdd
�Zdd�Zd	S)rrcCs*tj|||d�|�d�|_|��|_dS)N)r&r)rr)�	Semaphore�_unfinished_tasksr6�_condr#r'r'r(r)(szJoinableQueue.__init__cCst�|�|j|jfSr*)rr-r�r�r,r'r'r(r--szJoinableQueue.__getstate__cCs,t�||dd��|dd�\|_|_dS)N���)rr0r�r�r.r'r'r(r00szJoinableQueue.__setstate__TNc	Cs�|jrtd|�d���|j�||�st�|j�=|j�!|jdur%|��|j	�
|�|j��|j�
�Wd�n1s?wYWd�dSWd�dS1sWwYdSrE)r=rFrrGrr3r�r:rHr9rIr�rPrJrKr'r'r(rO4s

P�zJoinableQueue.putcCsf|j�&|j�d�std��|jj��r!|j��Wd�dSWd�dS1s,wYdS)NFz!task_done() called too many times)r�r�rGrFrWr^�
notify_allr,r'r'r(�	task_doneAs�"�zJoinableQueue.task_donecCsR|j�|jj��s|j��Wd�dSWd�dS1s"wYdSr*)r�r�rWr^rr,r'r'r(ryHs�"�zJoinableQueue.joinr�r�)	r�r�r�r)r-r0rOr�ryr'r'r'r(r&s


rc@sNeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	e
ej�Z
dS)rcCsJtjdd�\|_|_|��|_|jj|_tj	dkrd|_
dS|��|_
dS)NFrr)rrrrrrrCrDrrr)r$r&r'r'r(r)Ss



zSimpleQueue.__init__cCs|j��|j��dSr*)rrdrr,r'r'r(rd\s
zSimpleQueue.closecCrZr*r[r,r'r'r(r\`r]zSimpleQueue.emptycCst�|�|j|j|j|jfSr*)r	r+rrrrr,r'r'r(r-cs
zSimpleQueue.__getstate__cCs"|\|_|_|_|_|jj|_dSr*)rrrrrCrDr.r'r'r(r0gszSimpleQueue.__setstate__cCs:|j�
|j��}Wd�n1swYt�|�Sr*)rrrArSrT)r$rUr'r'r(rVks�
zSimpleQueue.getcCs\t�|�}|jdur|j�|�dS|j�|j�|�Wd�dS1s'wYdSr*)rSr�rrr?rbr'r'r(rOqs

"�zSimpleQueue.putN)r�r�r�r)rdr\r-r0rVrO�classmethod�types�GenericAlias�__class_getitem__r'r'r'r(rQs	
r)�__all__rrr5r7rQr�rvr~�queuerrZ_multiprocessing�rr	Z	reductionZForkingPicklerrS�utilr
rrr
r�objectrr{rrr'r'r'r(�<module>s(	z
+