관리-도구
편집 파일: popen_forkserver.cpython-39.pyc
a �����DOg�����������������������@���s����d�dl�Z�d�dlZddlmZmZ�ejs.ed��ddlmZ�ddlm Z �ddlm Z �ddlmZ�d gZG�d d��de �ZG�dd ��d e j�ZdS�) �����N����)� reduction�set_spawning_popenz,No support for sending fds between processes)� forkserver)� popen_fork)�spawn)�util�Popenc�������������������@���s���e�Zd�Zdd��Zdd��ZdS�)�_DupFdc�����������������C���s ���||�_�d�S��N)�ind)�selfr�����r����8/usr/lib64/python3.9/multiprocessing/popen_forkserver.py�__init__���s����z_DupFd.__init__c�����������������C���s���t����|�j�S�r���)r���Zget_inherited_fdsr���)r ���r���r���r����detach���s����z _DupFd.detachN)�__name__� __module__�__qualname__r���r���r���r���r���r���r ������s���r ���c�����������������������sB���e�Zd�ZdZeZ��fdd�Zdd��Zdd��Ze j fdd �Z���ZS�) r ���r���c��������������������s���g�|�_�t���|��d�S�r���)�_fds�superr���)r ����process_obj�� __class__r���r���r���!���s����zPopen.__init__c�����������������C���s���|�j��|��t|�j��d�S�)Nr���)r����append�len)r ����fdr���r���r����duplicate_for_child%���s����zPopen.duplicate_for_childc�����������������C���s����t��|j�}t���}t|���z$t�||��t�||��W�td���n td���0�t� |�j �\|�_}t� |�}t�|�tj||�jf�|�_t|ddd��}|�|�����W�d�����n1�s�0����Y��t�|�j�|�_d�S�)N�wbT)�closefd)r���Zget_preparation_data�_name�io�BytesIOr���r����dumpr���Zconnect_to_new_processr����sentinel�os�dupr����Finalize� close_fds� finalizer�open�write� getbuffer�read_signed�pid)r ���r���Z prep_data�buf�wZ _parent_w�fr���r���r����_launch)���s���� �,z Popen._launchc�������������� ���C���sp���|�j�d�u�rjddlm}�|tjkr$dnd�}||�jg|�s:d�S�zt�|�j�|�_�W�n�tt fyh���d|�_�Y�n0�|�j�S�)Nr���)�wait����) � returncode�multiprocessing.connectionr3���r%����WNOHANGr$���r���r-����OSError�EOFError)r ����flagr3����timeoutr���r���r����poll=���s���� z Popen.poll) r���r���r����methodr ����DupFdr���r���r2���r%���r7���r<���� __classcell__r���r���r���r���r ������s���)r!���r%����contextr���r����HAVE_SEND_HANDLE�ImportError��r���r���r���r����__all__�objectr ���r ���r���r���r���r����<module>���s���