Your IP : 3.141.201.92


Current Path : /opt/alt/python35/lib64/python3.5/multiprocessing/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/multiprocessing/__pycache__/popen_spawn_posix.cpython-35.pyc



��Yf{�@s�ddlZddlZddlmZddlmZddlmZddlmZddlmZdgZGd	d
�d
e	�Z
Gdd�dej�ZdS)�N�)�context)�
popen_fork)�	reduction)�spawn)�util�Popenc@s(eZdZdd�Zdd�ZdS)�_DupFdcCs
||_dS)N)�fd)�selfr
�r�F/opt/alt/python35/lib64/python3.5/multiprocessing/popen_spawn_posix.py�__init__sz_DupFd.__init__cCs|jS)N)r
)rrrr
�detachsz
_DupFd.detachN)�__name__�
__module__�__qualname__rrrrrr
r	sr	csFeZdZdZeZ�fdd�Zdd�Zdd�Z�S)rrcsg|_t�j|�dS)N)�_fds�superr)r�process_obj)�	__class__rr
rs	zPopen.__init__cCs|jj|�|S)N)r�append)rr
rrr
�duplicate_for_child#szPopen.duplicate_for_childc
Cs�ddlm}|j�}|jj|�tj|j�}tj	�}t
j|�z$tj
||�tj
||�Wdt
jd�Xd}}}}	z�tj�\}}tj�\}}	tjd|d|�}
|jj||g�tjtj�|
|j�|_||_t|	ddd��}|j|j��WdQRXWd|dk	rxtj|tj|f�x0|||	fD]}|dk	r�tj|�q�WXdS)Nr)�semaphore_tracker�
tracker_fdZpipe_handle�wb�closefdF)�rZgetfdrrrZget_preparation_data�_name�io�BytesIOrZset_spawning_popenr�dump�os�pipeZget_command_line�extendrZspawnv_passfdsZget_executable�pid�sentinel�open�write�	getbufferZFinalize�close)
rrrrZ	prep_data�fpZparent_rZchild_wZchild_rZparent_w�cmd�fr
rrr
�_launch's6
		z
Popen._launch)	rrr�methodr	ZDupFdrrr.rr)rr
rs
)rr"rrrrrr�__all__�objectr	rrrrr
�<module>s	

?>