Edit File: process.cpython-36.opt-2.pyc
3 � \�#������������������@���s��d�ddgZ�ddlZddlZddlZddlZddlmZ�yejjej ���Z W�n�ek rb���dZ Y�nX�dd��Zdd��Z dd ��ZG�d d���d�e�ZG�dd��de�ZG�d d��de�Ze��aejd�ae��a[i�Zx<eejj���D�]*\ZZedd��dko�dekr�eee�<�q�W�e��ZdS�)�BaseProcess�current_process�active_children�����N)�WeakSetc���������������C���s���t�S�)N)�_current_process��r���r����//usr/lib64/python3.6/multiprocessing/process.pyr���#���s����c���������������C���s���t����tt�S�)N)�_cleanup�list� _childrenr���r���r���r���r���)���s����c��������������C���s.���x(t�t�D�]}�|�jj��d�k r tj|���q W�d�S�)N)r ���r����_popen�poll�discard)�pr���r���r���r ���4���s����r ���c���������������@���s����e�Zd�Zdd��Zdddf�i�fdd�dd�Zdd��Zd d ��Zdd��Zd$d d�Zdd��Z e dd���Zejdd���Ze dd���Z e jdd���Z e dd���Zejdd���Ze dd���Ze dd���ZeZe dd���Zd d!��Zd"d#��ZdS�)%r���c�������������C���s���t��d�S�)N)�NotImplementedError)�selfr���r���r����_PopenD���s����zBaseProcess._PopenN)�daemonc������������C���s����t�t�}tj|f�|�_tjj��|�_tj��|�_d�|�_ ||�_ t|�|�_t |�|�_|prt|��jd�djdd��|�jD����|�_|d�k r�||�_tj|���d�S�)N�-�:c�������������s���s���|�]}t�|�V��qd�S�)N)�str)�.0�ir���r���r���� <genexpr>S���s����z'BaseProcess.__init__.<locals>.<genexpr>)�next�_process_counterr���� _identity�_config�copy�os�getpid�_parent_pidr����_target�tuple�_args�dict�_kwargs�type�__name__�join�_namer���� _dangling�add)r����group�target�name�args�kwargsr����countr���r���r����__init__G���s���� zBaseProcess.__init__c�������������C���s���|�j�r|�j�|�j|�j��d�S�)N)r"���r$���r&���)r���r���r���r����runX���s����zBaseProcess.runc�������������C���s6���t����|�j|��|�_|�jj|�_|�`|�`|�`tj |���d�S�)N) r ���r���r����sentinel� _sentinelr"���r$���r&���r���r,���)r���r���r���r����start_���s ���� zBaseProcess.startc�������������C���s���|�j�j���d�S�)N)r���� terminate)r���r���r���r���r8���p���s����zBaseProcess.terminatec�������������C���s"���|�j�j|�}|d�k rtj|���d�S�)N)r����waitr���r���)r���Ztimeout�resr���r���r���r)���v���s����zBaseProcess.joinc�������������C���sB���|�t�krdS�|�jd�krdS�|�jj��}|d�kr0dS�tj|���dS�d�S�)NTF)r���r���r ���r���r���)r���� returncoder���r���r����is_alive����s���� zBaseProcess.is_alivec�������������C���s���|�j�S�)N)r*���)r���r���r���r���r/�������s����zBaseProcess.namec�������������C���s ���||�_�d�S�)N)r*���)r���r/���r���r���r���r/�������s����c�������������C���s���|�j�jdd�S�)Nr���F)r����get)r���r���r���r���r�������s����zBaseProcess.daemonc�������������C���s���||�j�d<�d�S�)Nr���)r���)r���Zdaemonicr���r���r���r�������s����c�������������C���s ���|�j�d�S�)N�authkey)r���)r���r���r���r���r>�������s����zBaseProcess.authkeyc�������������C���s���t�|�|�jd<�d�S�)Nr>���)�AuthenticationStringr���)r���r>���r���r���r���r>�������s����c�������������C���s���|�j�d�kr|�j�S�|�j�j��S�)N)r���r ���)r���r���r���r����exitcode����s���� zBaseProcess.exitcodec�������������C���s"���|�t�krtj��S�|�jo|�jjS�d�S�)N)r���r���r ���r����pid)r���r���r���r����ident����s����zBaseProcess.identc�������������C���s(���y|�j�S��tk r"���td��Y�nX�d�S�)Nzprocess not started)r6����AttributeError� ValueError)r���r���r���r���r5�������s����zBaseProcess.sentinelc�������������C���s����|�t�krd}n>|�jtj��kr"d}n*|�jd�kr2d}n|�jj��d�k rH|�j}nd}t|�tkrv|dkrfd}ndt j ||��}dt|��j|�j||�j r�dp�d f�S�) NZstarted�unknown�initialr���Zstoppedzstopped[%s]z<%s(%s, %s%s)>z daemon��)r���r!���r���r ���r���r ���r@���r'����int�_exitcode_to_namer=���r(���r*���r���)r���Zstatusr���r���r����__repr__����s���� zBaseProcess.__repr__c���������� ���C���sJ��ddl�m}m}��zy||�jd�k r,|j|�j��tjd�at��a |j ���t}|�az|jj ���|j���W�d�~X�|jd��z|�j���d}W�d�|j���X�W�n��tk r��}�zL|js�d}n:t|jd�t�r�|jd�}ntjjt|jd��d���d}W�Y�d�d�}~X�n2���d}dd�l}tjjd|�j���|j���Y�nX�W�d�|jd|���|j���X�|S�)N����)�util�contextz child process calling self.run()r���� zProcess %s: z process exiting with exitcode %d)rG���rL���rM���Z _start_methodZ_force_start_method� itertoolsr2���r����setr���Z_close_stdinr���Z_finalizer_registry�clearZ_run_after_forkers�infor4���Z_exit_function� SystemExitr0���� isinstancerH����sys�stderr�writer���� tracebackr/���� print_excZ_flush_std_streams)r���rL���rM���Zold_processr@����erX���r���r���r���� _bootstrap����sB���� zBaseProcess._bootstrap)N)r(���� __module__�__qualname__r���r3���r4���r7���r8���r)���r<����propertyr/����setterr���r>���r@���rB���rA���r5���rJ���r[���r���r���r���r���r���>���s(��� c���������������@���s���e�Zd�Zdd��ZdS�)r?���c�������������C���s,���ddl�m}�|��d�krtd��tt|��ffS�)NrK���)�get_spawning_popenzJPickling an AuthenticationString object is disallowed for security reasons)rM���r`���� TypeErrorr?����bytes)r���r`���r���r���r���� __reduce__��s ���� zAuthenticationString.__reduce__N)r(���r\���r]���rc���r���r���r���r���r?�����s���r?���c���������������@���s���e�Zd�Zdd��ZdS�)�_MainProcessc�������������C���s2���f�|�_�d|�_d�|�_d�|�_ttjd��dd�|�_d�S�)NZMainProcess� ���z/mp)r>���Z semprefix)r���r*���r!���r���r?���r����urandomr���)r���r���r���r���r3���-��s����z_MainProcess.__init__N)r(���r\���r]���r3���r���r���r���r���rd���+��s���rd���rK�������ZSIG�_) �__all__r���rU����signalrO����_weakrefsetr����path�abspath�getcwdZORIGINAL_DIR�OSErrorr���r���r ����objectr���rb���r?���rd���r���r2���r���rP���r���rI���r ����__dict__�itemsr/���Zsignumr+���r���r���r���r����<module> ���s2��� �`