$q d dl Z d dlZddlmZmZ ej s ed ddlmZ ddlm Z ddlm
Z
ddlmZ d gZ G d
de
Z G d d e j ZdS )
N ) reductionset_spawning_popenz,No support for sending fds between processes)
forkserver)
popen_fork)spawn)utilPopenc e Zd Zd Zd ZdS )_DupFdc || _ d S N)ind)selfr s M/opt/alt/python-internal/lib64/python3.11/multiprocessing/popen_forkserver.py__init__z_DupFd.__init__ s
c > t j | j S r )r get_inherited_fdsr )r s r detachz
_DupFd.detach s +--dh77r N)__name__
__module____qualname__r r r r r r s2 8 8 8 8 8r r c F e Zd ZdZeZ fdZd Zd Ze j
fdZ xZS )r
r c X g | _ t | d S r )_fdssuperr )r process_obj __class__s r r zPopen.__init__! s(
%%%%%r c d | j | t | j dz
S )Nr )r appendlen)r fds r duplicate_for_childzPopen.duplicate_for_child% s+ 49~~!!r c t j |j }t j }t | t
j || t
j || t d n# t d w xY wt j | j
\ | _ }t j
| }t j | t j || j f | _ t% |dd 5 }| | d d d n# 1 swxY w Y t j | j | _ d S )NwbT)closefd)r get_preparation_data_nameioBytesIOr r dumpr connect_to_new_processr sentinelosdupr Finalize close_fds finalizeropenwrite getbufferread_signedpid)r r prep_databufw _parent_wfs r _launchz
Popen._launch) sc .{/@AA jll4 %N9c***N;,,,t$$$$t$$$$%