Server : LiteSpeed
System : Linux server51.dnsbootclub.com 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64
User : nandedex ( 1060)
PHP Version : 8.1.33
Disable Function : NONE
Directory :  /opt/cppython/lib/python3.8/concurrent/futures/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]


Current File : //opt/cppython/lib/python3.8/concurrent/futures/__pycache__/process.cpython-38.opt-2.pyc
U

?��gzn�@s�dZddlZddlZddlmZddlZddlmZddlZddl	Zddl
mZddlZddl
Z
ddlmZddlZddlZddlZe
��ZdaGdd	�d	�Zd
d�ZdZd
ZGdd�de�ZGdd�d�Zdd�ZGdd�de�ZGdd�de�Z Gdd�de�Z!Gdd�de�Z"dd�Z#dd�Z$d0d d!�Z%d"d#�Z&d$d%�Z'd&d'�Z(da)da*d(d)�Z+d*d+�Z,Gd,d-�d-ej-�Z.Gd.d/�d/ej/�Z0e�1e�dS)1z"Brian Quinlan (brian@sweetapp.com)�N)�_base)�Full)�Queue)�partialFc@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�
_ThreadWakeupcCstjdd�\|_|_dS)NF)�duplex)�mp�Pipe�_reader�_writer��self�r�9/opt/cppython/lib/python3.8/concurrent/futures/process.py�__init__Rsz_ThreadWakeup.__init__cCs|j��|j��dS�N)r�closer
rrrrrUs
z_ThreadWakeup.closecCs|j�d�dS)N�)r�
send_bytesrrrr�wakeupYsz_ThreadWakeup.wakeupcCs|j��r|j��qdSr)r
�poll�
recv_bytesrrrr�clear\s
z_ThreadWakeup.clearN)�__name__�
__module__�__qualname__rrrrrrrrrQsrcCs@datt���}|D]\}}|��q|D]\}}|��q*dS�NT)�_global_shutdown�list�_threads_wakeups�itemsr�join)r �_�
thread_wakeup�trrr�_python_exitas
r%��=c@seZdZdd�Zdd�ZdS)�_RemoteTracebackcCs
||_dSr��tb)r
r*rrrrzsz_RemoteTraceback.__init__cCs|jSrr)rrrr�__str__|sz_RemoteTraceback.__str__N)rrrrr+rrrrr(ysr(c@seZdZdd�Zdd�ZdS)�_ExceptionWithTracebackcCs0t�t|�||�}d�|�}||_d||_dS)N�z

"""
%s""")�	traceback�format_exception�typer!�excr*)r
r1r*rrrr�s
z _ExceptionWithTraceback.__init__cCst|j|jffSr)�_rebuild_excr1r*rrrr�
__reduce__�sz"_ExceptionWithTraceback.__reduce__N)rrrrr3rrrrr,sr,cCst|�|_|Sr)r(�	__cause__)r1r*rrrr2�s
r2c@seZdZdd�ZdS)�	_WorkItemcCs||_||_||_||_dSr)�future�fn�args�kwargs)r
r6r7r8r9rrrr�sz_WorkItem.__init__N�rrrrrrrrr5�sr5c@seZdZddd�ZdS)�_ResultItemNcCs||_||_||_dSr)�work_id�	exception�result)r
r<r=r>rrrr�sz_ResultItem.__init__)NNr:rrrrr;�sr;c@seZdZdd�ZdS)�	_CallItemcCs||_||_||_||_dSr)r<r7r8r9)r
r<r7r8r9rrrr�sz_CallItem.__init__Nr:rrrrr?�sr?cs*eZdZd�fdd�	Z�fdd�Z�ZS)�
_SafeQueuercs||_t�j||d�dS)N)�ctx)�pending_work_items�superr)r
�max_sizerArB��	__class__rrr�sz_SafeQueue.__init__cslt|t�rZt�t|�||j�}td�d�|���|_	|j
�|jd�}|dk	rh|j
�|�nt��||�dS)Nz

"""
{}"""r-)�
isinstancer?r.r/r0�
__traceback__r(�formatr!r4rB�popr<r6�
set_exceptionrC�_on_queue_feeder_error)r
�e�objr*�	work_itemrErrrL�s
z!_SafeQueue._on_queue_feeder_error)r)rrrrrL�
__classcell__rrrErr@�sr@cgs,t|�}tt�||��}|s dS|VqdSr)�zip�tuple�	itertools�islice)�	chunksize�	iterables�it�chunkrrr�_get_chunks�s
rYcs�fdd�|D�S)Ncsg|]}�|��qSrr)�.0r8�r7rr�
<listcomp>�sz"_process_chunk.<locals>.<listcomp>r)r7rXrr[r�_process_chunk�s	r]c
Cs^z|�t|||d��Wn@tk
rX}z"t||j�}|�t||d��W5d}~XYnXdS)N)r>r=�r=)�putr;�
BaseExceptionr,rH)�result_queuer<r>r=rMr1rrr�_sendback_result�s
�rbc
Cs�|dk	r<z||�Wn&tk
r:tjjddd�YdSX|jdd�}|dkrb|�t���dSz|j|j	|j
�}Wn>tk
r�}z t||j�}t
||j|d�W5d}~XYnXt
||j|d�~~q<dS)NzException in initializer:T)�exc_info��blockr^)r>)r`r�LOGGER�critical�getr_�os�getpidr7r8r9r,rHrbr<)�
call_queuera�initializer�initargs�	call_item�rrMr1rrr�_process_worker�s$
"rpcCsv|��rdSz|jdd�}Wntjk
r4YdSX||}|j��rh|jt||j|j	|j
�dd�q||=qqdS)NFrdT)�fullrh�queue�Emptyr6�set_running_or_notify_cancelr_r?r7r8r9)rB�work_idsrkr<rOrrr�_add_call_item_to_queue�s"
��rvc
s>d��fdd�}��fdd�}|j}	|j}
|	|
g}t||��dd����D�}tj�||�}
d}d}|	|
kr�z|	��}d}Wq�tk
r�}zt�	t
|�||j�}W5d}~XYq�Xn|
|
kr�d}d}|��|�rl|���dk	r�d	�_
d�_d�td
�}|dk	�r tdd�|��d
��|_|��D]\}}|j�|�~�q(|�����D]}|���qR|�dSt|t��r���|�}|����s�|�dSnL|dk	�r�|�|jd�}|dk	�r�|j�r�|j�|j�n|j�|j�~~|��|��r4z&�dk	�rd�_|�s|�WdSWntk
�r2YnXd�q2dS)Ncstp�dkp�jSr)r�_shutdown_threadr)�executorrr�
shutting_down@s�z/_queue_management_worker.<locals>.shutting_downc	s�tdd����D��}|}d}||kr�|dkr�t||�D]6}z��d�|d7}Wq:tk
rnYqrYq:Xq:tdd����D��}q������D]}|��q�dS)Ncss|]}|��VqdSr��is_alive�rZ�prrr�	<genexpr>FszD_queue_management_worker.<locals>.shutdown_worker.<locals>.<genexpr>rr&css|]}|��VqdSrrzr|rrrr~Rs)�sum�values�range�
put_nowaitrrr!)�n_children_alive�n_children_to_stop�n_sentinels_sent�ir})rk�	processesrr�shutdown_workerDs
z1_queue_management_worker.<locals>.shutdown_workercSsg|]
}|j�qSr)�sentinelr|rrrr\isz,_queue_management_worker.<locals>.<listcomp>TFzKA child process terminated abruptly, the process pool is not usable anymorez^A process in the process pool was terminated abruptly while the future was running or pending.z
'''
r-z''')r
rvr�r�
connection�wait�recvr`r.r/r0rHr�_brokenrw�BrokenProcessPoolr(r!r4r r6rK�	terminaterG�intrJr<r=�
set_resultr>r)�executor_referencer�rB�work_ids_queuerkrar#ryr��
result_reader�
wakeup_reader�readers�worker_sentinels�ready�cause�	is_broken�result_itemrM�bper<rOr}r)rkrxr�r�_queue_management_worker"s��	(
�




r�c	Csjtrtrtt��dazt�d�}Wnttfk
r<YdSX|dkrJdS|dkrVdSd|att��dS)NT�SC_SEM_NSEMS_MAX����z@system provides too few semaphores (%d available, 256 necessary))�_system_limits_checked�_system_limited�NotImplementedErrorri�sysconf�AttributeError�
ValueError)�	nsems_maxrrr�_check_system_limits�s �r�ccs&|D]}|��|r|��VqqdSr)�reverserJ)�iterable�elementrrr�_chain_from_iterable_of_lists�sr�c@seZdZdS)r�N)rrrrrrrr��sr�csteZdZddd�Zdd�Zdd�Zd	d
�Zejjj	e_	ejjj
e_
ddd��fd
d�
Zddd�Zejjj
e_
�Z
S)�ProcessPoolExecutorNrcCst�|dkr6t��pd|_tjdkrntt|j�|_n8|dkrHtd��n tjdkrh|tkrhtdt����||_|dkr~t	�
�}||_|dk	r�t|�s�t
d��||_||_d|_i|_d|_t��|_d|_d|_i|_|jt}t||j|jd�|_d	|j_|��|_t� �|_!t"�|_#dS)
Nr&�win32rz"max_workers must be greater than 0zmax_workers must be <= zinitializer must be a callableF)rDrArBT)$r�ri�	cpu_count�_max_workers�sys�platform�min�_MAX_WINDOWS_WORKERSr�r�get_context�_mp_context�callable�	TypeError�_initializer�	_initargs�_queue_management_thread�
_processesrw�	threading�Lock�_shutdown_lockr��_queue_count�_pending_work_items�EXTRA_QUEUED_CALLSr@�_call_queue�
_ignore_epipe�SimpleQueue�
_result_queuerrr�	_work_idsr�_queue_management_thread_wakeup)r
�max_workers�
mp_contextrlrm�
queue_sizerrrr�sP

�

��

�

zProcessPoolExecutor.__init__c	Csv|jdkrr|jfdd�}|��tjtt�||�|j|j	|j
|j|j|jfdd�|_d|j_
|j��|jt|j<dS)NcSstj�d�|��dS)Nz?Executor collected: triggering callback for QueueManager wakeup)r�util�debugr)r"r#rrr�
weakref_cbBszFProcessPoolExecutor._start_queue_management_thread.<locals>.weakref_cb�QueueManagerThread)�targetr8�nameT)r�r��_adjust_process_countr��Threadr��weakref�refr�r�r�r�r��daemon�startr)r
r�rrr�_start_queue_management_thread=s(
�

��

�z2ProcessPoolExecutor._start_queue_management_threadcCsPtt|j�|j�D]8}|jjt|j|j|j	|j
fd�}|��||j|j<qdS)N)r�r8)
r��lenr�r�r��Processrpr�r�r�r�r��pid)r
r"r}rrrr�Xs��z)ProcessPoolExecutor._adjust_process_countc
Os
t|�dkr|^}}}nV|s&td��nHd|krZ|�d�}|^}}ddl}|jdtdd�ntdt|�d��|j��|jr�t|j��|j	r�t
d	��tr�t
d
��t�
�}t||||�}||j|j<|j�|j�|jd7_|j��|��|W5QR�SQRXdS)N�zEdescriptor 'submit' of 'ProcessPoolExecutor' object needs an argumentr7rz.Passing 'fn' as keyword argument is deprecated)�
stacklevelz6submit expected at least 1 positional argument, got %dr&z*cannot schedule new futures after shutdownz6cannot schedule new futures after interpreter shutdown)r�r�rJ�warnings�warn�DeprecationWarningr�r�r�rw�RuntimeErrorrr�Futurer5r�r�r�r_r�rr�)r8r9r
r7r��f�wrrr�submitcs<

�
�

zProcessPoolExecutor.submitr&)�timeoutrUcs:|dkrtd��t�jtt|�t|d|i�|d�}t|�S)Nr&zchunksize must be >= 1.rU)r�)r�rC�maprr]rYr�)r
r7r�rUrV�resultsrErrr��s�zProcessPoolExecutor.mapTc	Cs�|j�d|_W5QRX|jr6|j��|r6|j��d|_|jdk	rd|j��|r^|j��d|_d|_	d|_
|jr�|j��d|_dSr)r�rwr�r�rr!r�r�join_threadr�r�)r
r�rrr�shutdown�s"





zProcessPoolExecutor.shutdown)NNNr)T)rrrrr�r�r�r�Executor�__text_signature__�__doc__r�r�rPrrrErr��s�
K$
r�)NN)2�
__author__�atexitri�concurrent.futuresrrrr�multiprocessingr�multiprocessing.connection�multiprocessing.queuesrr�r��	functoolsrrSr�r.�WeakKeyDictionaryrrrr%r�r��	Exceptionr(r,r2�objectr5r;r?r@rYr]rbrprvr�r�r�r�r��BrokenExecutorr�r�r��registerrrrr�<module>.sT
		

)&!P

F1le Man4ger