JFIF$        dd7 

Viewing File: /usr/lib64/python3.9/multiprocessing/__pycache__/process.cpython-39.opt-2.pyc

a

�i�.�@s2gd�ZddlZddlZddlZddlZddlZddlmZzej�	e�
��ZWneyfdZYn0dd�Z
dd�Zdd	�Zd
d�ZGdd
�d
e�ZGdd�de�ZGdd�de�ZGdd�de�Zdae�ae�d�ae�a[iZeej� ��D]0\Z!Z"e!dd�dkr�de!vr�de!��ee"<q�e�Z#dS))�BaseProcess�current_process�active_children�parent_process�N)�WeakSetcCstS�N)�_current_process�r	r	�//usr/lib64/python3.9/multiprocessing/process.pyr%srcCst�tt�Sr)�_cleanup�list�	_childrenr	r	r	r
r+srcCstSr)�_parent_processr	r	r	r
r3srcCs*tt�D]}|j��durt�|�qdSr)rr
�_popen�poll�discard)�pr	r	r
r=src@s�eZdZdd�Zddddifdd�dd�Zdd	�Zd
d�Zdd
�Zdd�Zdd�Z	d+dd�Z
dd�Zdd�Ze
dd��Zejdd��Ze
dd��Zejdd��Ze
dd��Zejd d��Ze
d!d"��Ze
d#d$��ZeZe
d%d&��Zd'd(�Zd,d)d*�ZdS)-rcCst�dSr)�NotImplementedError��selfr	r	r
�_PopenMszBaseProcess._PopenNr	)�daemoncCs�tt�}tj|f|_tj��|_t��|_tj	|_
d|_d|_||_
t|�|_t|�|_|p�t|�jdd�dd�|jD��|_|dur�||_t�|�dS)NF�-�:css|]}t|�VqdSr)�str)�.0�ir	r	r
�	<genexpr>^�z'BaseProcess.__init__.<locals>.<genexpr>)�next�_process_counterr�	_identity�_config�copy�os�getpid�_parent_pid�name�_parent_namer�_closed�_target�tuple�_args�dict�_kwargs�type�__name__�join�_namer�	_dangling�add)r�group�targetr'�args�kwargsr�countr	r	r
�__init__Ps 


�zBaseProcess.__init__cCs|jrtd��dS)Nzprocess object is closed)r)�
ValueErrorrr	r	r
�
_check_closedcszBaseProcess._check_closedcCs|jr|j|ji|j��dSr)r*r,r.rr	r	r
�rungszBaseProcess.runcCs>|��t�|�|�|_|jj|_|`|`|`t	�
|�dSr)r<rrr�sentinel�	_sentinelr*r,r.r
r4rr	r	r
�startns
zBaseProcess.startcCs|��|j��dSr)r<r�	terminaterr	r	r
rA�szBaseProcess.terminatecCs|��|j��dSr)r<r�killrr	r	r
rB�szBaseProcess.killcCs*|��|j�|�}|dur&t�|�dSr)r<r�waitr
r)r�timeout�resr	r	r
r1�szBaseProcess.joincCsJ|��|turdS|jdur"dS|j��}|dur8dSt�|�dSdS)NTF)r<rrrr
r)r�
returncoder	r	r
�is_alive�s


zBaseProcess.is_alivecCsH|jdur>|j��dur td��|j��d|_|`t�|�d|_dS)Nz^Cannot close a process while it is still running. You should first call join() or terminate().T)rrr;�closer?r
rr)rr	r	r
rH�s


zBaseProcess.closecCs|jSr�r2rr	r	r
r'�szBaseProcess.namecCs
||_dSrrI)rr'r	r	r
r'�scCs|j�dd�S)NrF)r"�getrr	r	r
r�szBaseProcess.daemoncCs||jd<dS)Nr�r")r�daemonicr	r	r
r�scCs
|jdS�N�authkeyrKrr	r	r
rN�szBaseProcess.authkeycCst|�|jd<dSrM)�AuthenticationStringr")rrNr	r	r
rN�scCs"|��|jdur|jS|j��Sr)r<rrrr	r	r
�exitcode�s
zBaseProcess.exitcodecCs*|��|turt��S|jo$|jjSdSr)r<rr$r%r�pidrr	r	r
�ident�szBaseProcess.identcCs2|��z|jWSty,td�d�Yn0dS)Nzprocess not started)r<r?�AttributeErrorr;rr	r	r
r>�s
zBaseProcess.sentinelcCs�d}|turd}nL|jrd}n@|jt��kr2d}n,|jdurBd}n|j��}|durZd}nd}t|�jd|j	g}|jdur�|�
d|jj�|�
d|j�|�
|�|dur�t�
||�}|�
d	|�|jr�|�
d
�dd�|�S)
N�started�closed�unknown�initial�stoppedzname=%rzpid=%sz	parent=%szexitcode=%srz<%s>� )rr)r&r$r%rrr/r0r2�appendrQ�_exitcode_to_namerJrr1)rrP�status�infor	r	r
�__repr__s0




zBaseProcess.__repr__c
Cs�ddlm}m}�z`z�|jdur,|�|j�t�d�at�a	|�
�t}|at|j
|j|�atjrnt����z|j��|��W~n~0|�d�z|��d}W|��n
|��0Wn�t�y }zJ|jdur�d}n.t|jt�r�|j}ntj� t!|j�d�d}WYd}~n:d}~0d}ddl"}tj� d|j#�|�$�Yn0Wt�%�|�d|�|�&�n t�%�|�d|�|�&�0|S)N�)�util�contextz child process calling self.run()r�
zProcess %s:
z process exiting with exitcode %d)'�r`ra�
_start_method�_force_start_method�	itertoolsr9r �setr
�_close_stdinr�_ParentProcessr(r&r�	threading�_HAVE_THREAD_NATIVE_ID�main_thread�_set_native_id�_finalizer_registry�clear�_run_after_forkersr]r=�_exit_function�
SystemExit�code�
isinstance�int�sys�stderr�writer�	tracebackr'�	print_exc�	_shutdown�_flush_std_streams)r�parent_sentinelr`ra�old_processrP�eryr	r	r
�
_bootstrap"sT


�




�
zBaseProcess._bootstrap)N)N)r0�
__module__�__qualname__rr:r<r=r@rArBr1rGrH�propertyr'�setterrrNrPrRrQr>r^r�r	r	r	r
rGsB�







	


rc@seZdZdd�ZdS)rOcCs,ddlm}|�durtd��tt|�ffS)Nr_)�get_spawning_popenzJPickling an AuthenticationString object is disallowed for security reasons)rar��	TypeErrorrO�bytes)rr�r	r	r
�
__reduce__Xs
�zAuthenticationString.__reduce__N)r0r�r�r�r	r	r	r
rOWsrOc@s6eZdZdd�Zdd�Zedd��Zd
dd	�ZeZdS)ricCs4d|_||_||_d|_d|_d|_||_i|_dS)Nr	F)r!r2�_pidr&rr)r?r")rr'rQr>r	r	r
r:hsz_ParentProcess.__init__cCsddlm}||jgdd�S�Nr)rC)rD��multiprocessing.connectionrCr?)rrCr	r	r
rGrsz_ParentProcess.is_alivecCs|jSr)r�rr	r	r
rRvsz_ParentProcess.identNcCs ddlm}||jg|d�dSr�r�)rrDrCr	r	r
r1zsz_ParentProcess.join)N)	r0r�r�r:rGr�rRr1rQr	r	r	r
rifs


ric@seZdZdd�Zdd�ZdS)�_MainProcesscCs8d|_d|_d|_d|_d|_tt�d��dd�|_dS)Nr	�MainProcessF� z/mp)rN�	semprefix)	r!r2r&rr)rOr$�urandomr"rr	r	r
r:�s�z_MainProcess.__init__cCsdSrr	rr	r	r
rH�sz_MainProcess.closeN)r0r�r�r:rHr	r	r	r
r��sr�r_�ZSIG�_r)$�__all__r$rv�signalrfrj�_weakrefsetr�path�abspath�getcwd�ORIGINAL_DIR�OSErrorrrrr�objectrr�rOrir�rrr9r rgr
r[r�__dict__�itemsr'�signumr3r	r	r	r
�<module>
s<


!

Back to Directory  nL+D550H?Mx ,D"v]qv;6*Zqn)ZP0!1 A "#a$2Qr D8 a Ri[f\mIykIw0cuFcRı?lO7к_f˓[C$殷WF<_W ԣsKcëIzyQy/_LKℂ;C",pFA:/]=H  ~,ls/9ć:[=/#f;)x{ٛEQ )~ =𘙲r*2~ a _V=' kumFD}KYYC)({ *g&f`툪ry`=^cJ.I](*`wq1dđ#̩͑0;H]u搂@:~וKL Nsh}OIR*8:2 !lDJVo(3=M(zȰ+i*NAr6KnSl)!JJӁ* %݉?|D}d5:eP0R;{$X'xF@.ÊB {,WJuQɲRI;9QE琯62fT.DUJ;*cP A\ILNj!J۱+O\͔]ޒS߼Jȧc%ANolՎprULZԛerE2=XDXgVQeӓk yP7U*omQIs,K`)6\G3t?pgjrmۛجwluGtfh9uyP0D;Uڽ"OXlif$)&|ML0Zrm1[HXPlPR0'G=i2N+0e2]]9VTPO׮7h(F*癈'=QVZDF,d߬~TX G[`le69CR(!S2!P <0x<!1AQ "Raq02Br#SCTb ?Ζ"]mH5WR7k.ۛ!}Q~+yԏz|@T20S~Kek *zFf^2X*(@8r?CIuI|֓>^ExLgNUY+{.RѪ τV׸YTD I62'8Y27'\TP.6d&˦@Vqi|8-OΕ]ʔ U=TL8=;6c| !qfF3aů&~$l}'NWUs$Uk^SV:U# 6w++s&r+nڐ{@29 gL u"TÙM=6(^"7r}=6YݾlCuhquympǦ GjhsǜNlɻ}o7#S6aw4!OSrD57%|?x>L |/nD6?/8w#[)L7+6〼T ATg!%5MmZ/c-{1_Je"|^$'O&ޱմTrb$w)R$& N1EtdU3Uȉ1pM"N*(DNyd96.(jQ)X 5cQɎMyW?Q*!R>6=7)Xj5`J]e8%t!+'!1Q5 !1 AQaqё#2"0BRb?Gt^## .llQT $v,,m㵜5ubV =sY+@d{N! dnO<.-B;_wJt6;QJd.Qc%p{ 1,sNDdFHI0ГoXшe黅XۢF:)[FGXƹ/w_cMeD,ʡcc.WDtA$j@:) -# u c1<@ۗ9F)KJ-hpP]_x[qBlbpʖw q"LFGdƶ*s+ډ_Zc"?%t[IP 6J]#=ɺVvvCGsGh1 >)6|ey?Lӣm,4GWUi`]uJVoVDG< SB6ϏQ@ TiUlyOU0kfV~~}SZ@*WUUi##; s/[=!7}"WN]'(L! ~y5g9T̅JkbM' +s:S +B)v@Mj e Cf jE 0Y\QnzG1д~Wo{T9?`Rmyhsy3!HAD]mc1~2LSu7xT;j$`}4->L#vzŏILS ֭T{rjGKC;bpU=-`BsK.SFw4Mq]ZdHS0)tLg