HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux ip-10-0-8-47 6.8.0-1021-aws #23~22.04.1-Ubuntu SMP Tue Dec 10 16:31:58 UTC 2024 aarch64
User: ubuntu (1000)
PHP: 8.1.2-1ubuntu2.22
Disabled: NONE
Upload Files
File: //snap/core18/2956/usr/lib/python3.6/multiprocessing/__pycache__/popen_forkserver.cpython-36.pyc
3

�äh��@s�ddlZddlZddlmZmZejs.ed��ddlmZddlm	Z	ddlm
Z
ddlmZd	gZGd
d�de
�ZGdd	�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
�6/usr/lib/python3.6/multiprocessing/popen_forkserver.py�__init__sz_DupFd.__init__cCstj�|jS)N)rZget_inherited_fdsr)rr
r
r�detachsz
_DupFd.detachN)�__name__�
__module__�__qualname__rrr
r
r
rr
sr
csBeZdZdZeZ�fdd�Zdd�Zdd�Ze	j
fdd	�Z�ZS)
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%szPopen.duplicate_for_childcCs�tj|j�}tj�}t|�ztj||�tj||�Wdtd�Xtj	|j
�\|_}tj
|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)rrZ	prep_dataZbuf�w�fr
r
r�_launch)s
z
Popen._launchcCsr|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