£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>
U
    e5d
                     @   s6   d dl Z d dlZddlmZ dgZG dd deZdS )    N   )utilPopenc                   @   s`   e Zd ZdZdd Zdd ZejfddZdd	d
Z	dd Z
dd Zdd Zdd Zdd ZdS )r   forkc                 C   s"   t   d | _d | _| | d S N)r   Z_flush_std_streams
returncode	finalizer_launch)selfprocess_obj r   2/usr/lib64/python3.8/multiprocessing/popen_fork.py__init__   s    zPopen.__init__c                 C   s   |S r   r   )r
   fdr   r   r   duplicate_for_child   s    zPopen.duplicate_for_childc              
   C   s   | j d krzzt| j|\}}W n( tk
rH } z
W Y d S d }~X Y nX || jkrzt|rnt| | _ nt|| _ | j S r   )r   oswaitpidpidOSErrorWIFSIGNALEDWTERMSIGWEXITSTATUS)r
   flagr   stser   r   r   poll   s    


z
Popen.pollNc                 C   sN   | j d krH|d k	r0ddlm} || jg|s0d S | |dkrBtjndS | j S )Nr   )waitg        )r   Zmultiprocessing.connectionr   sentinelr   r   WNOHANG)r
   timeoutr   r   r   r   r   (   s    
z
Popen.waitc                 C   sZ   | j d krVzt| j| W n8 tk
r0   Y n& tk
rT   | jddd krP Y nX d S )Ng?)r   )r   r   killr   ProcessLookupErrorr   r   )r
   Zsigr   r   r   _send_signal2   s    
zPopen._send_signalc                 C   s   |  tj d S r   )r"   signalSIGTERMr
   r   r   r   	terminate<   s    zPopen.terminatec                 C   s   |  tj d S r   )r"   r#   SIGKILLr%   r   r   r   r    ?   s    z
Popen.killc              	   C   s   d}t  \}}t  \}}t  | _| jdkrdz$t | t | |j|d}W 5 t | X n0t | t | t| tj	||f| _
|| _d S )Nr   r   )Zparent_sentinel)r   piper   r   _exitclose
_bootstrapr   ZFinalizeZ	close_fdsr   r   )r
   r   codeZparent_rZchild_wZchild_rZparent_wr   r   r   r	   B   s     






zPopen._launchc                 C   s   | j d k	r|    d S r   )r   r%   r   r   r   r*   U   s    
zPopen.close)N)__name__
__module____qualname__methodr   r   r   r   r   r   r"   r&   r    r	   r*   r   r   r   r   r      s   


)r   r#    r   __all__objectr   r   r   r   r   <module>   s   