£Á°è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>

]	                 @   sW   d  d l  Z  d  d l Z d  d l Z d d l m Z d g Z Gd d   d e  Z d S)    N   )utilPopenc               @   sg   e  Z d  Z d Z d d   Z d d   Z e j d d  Z d d	 d
  Z	 d d   Z
 d d   Z d S)r   forkc             C   s4   t  j j   t  j j   d  |  _ |  j |  d  S)N)sysstdoutflushstderr
returncode_launch)selfprocess_obj r   //opt/alt/python35/lib64/python3.5/popen_fork.py__init__   s    	zPopen.__init__c             C   s   | S)Nr   )r   fdr   r   r   duplicate_for_child   s    zPopen.duplicate_for_childc             C   s   |  j  d  k r xP y t j |  j |  \ } } Wn) t k
 r\ } z	 d  SWYd  d  } ~ Xq XPq W| |  j k r t j |  r t j |  |  _  n t j |  |  _  |  j  S)N)r
   oswaitpidpidOSErrorWIFSIGNALEDWTERMSIGWEXITSTATUS)r   flagr   stser   r   r   poll   s    z
Popen.pollNc             C   sm   |  j  d  k rf | d  k	 rD d d l m } | |  j g |  sD d  S|  j | d k r_ t j n d  S|  j  S)Nr   )waitg        )r
   multiprocessing.connectionr   sentinelr   r   WNOHANG)r   timeoutr   r   r   r   r   ,   s    "z
Popen.waitc             C   sn   |  j  d  k rj y t j |  j t j  Wn> t k
 r= Yn- t k
 ri |  j d d  d  k re   Yn Xd  S)Nr"   g?)	r
   r   killr   signalSIGTERMProcessLookupErrorr   r   )r   r   r   r   	terminate6   s    zPopen.terminatec             C   s   d } t  j   \ } } t  j   |  _ |  j d k r zB t  j |  d t j k rk d d  l } | j   | j	   } Wd  t  j
 |  Xn/ t  j |  t j |  t  j | f  | |  _ d  S)Nr   r   random)r   piper   r   closer   modulesr(   seed
_bootstrap_exitr   Finalizer    )r   r   codeZparent_rZchild_wr(   r   r   r   r   @   s    
zPopen._launch)__name__
__module____qualname__methodr   r   r   r!   r   r   r'   r   r   r   r   r   r      s   

)r   r   r$    r   __all__objectr   r   r   r   r   <module>   s
   	