Your IP : 18.217.19.206
3
\��@s�ddlZddlZddlmZmZejs.ed��ddlmZddlm Z ddlm
Z
ddlmZd gZGd
d�de
�ZGdd �d e j�ZdS)
�N�)� reduction�set_spawning_popenz,No support for sending fds between processes)�
forkserver)�
popen_fork)�spawn)�util�Popenc@seZdZdd�Zdd�ZdS)�_DupFdcCs
||_dS)N)�ind)�selfr�r
�8/usr/lib64/python3.6/multiprocessing/popen_forkserver.py�__init__sz_DupFd.__init__cCstj�|jS)N)rZget_inherited_fdsr)rr
r
r�detachsz
_DupFd.detachN)�__name__�
__module__�__qualname__rrr
r
r
rr
sr
csBeZdZdZeZ�fdd�Zdd�Zdd�Ze j
fdd �Z�ZS)
r rcsg|_t�j|�dS)N)�_fds�superr)r�process_obj)� __class__r
rr!szPopen.__init__cCs|jj|�t|j�dS)Nr)r�append�len)r�fdr
r
r�duplicate_for_child%szPopen.duplicate_for_childcCs�tj|j�}tj�}t|�ztj||�tj||�Wdtd�Xtj |j
�\|_}tj
|tj|jf�t|ddd��}|j|j��WdQRXtj|j�|_dS)N�wbT)�closefd)rZget_preparation_data�_name�io�BytesIOrr�dumprZconnect_to_new_processr�sentinelrZFinalize�os�close�open�write� getbuffer�
read_unsigned�pid)rrZ prep_dataZbuf�w�fr
r
r�_launch)s
z
Popen._launchcCsr|jdkrlddlm}|tjkr$dnd}||jg|�s:dSytj|j�|_Wntt fk
rjd|_YnX|jS)Nr)�wait�)
�
returncodeZmultiprocessing.connectionr-r#�WNOHANGr"rr(�OSError�EOFError)r�flagr-Ztimeoutr
r
r�poll9s
z
Popen.poll)
rrr�methodr
ZDupFdrrr,r#r0r4�
__classcell__r
r
)rrr s)rr#�contextrrZHAVE_SEND_HANDLE�ImportError�rrrr�__all__�objectr
r r
r
r
r�<module>s
?>