관리-도구
편집 파일: windows_utils.cpython-311.opt-1.pyc
� c��f� � � � d Z ddlZej dk r ed� � �ddlZddlZddlZddlZddlZddl Z ddl Z dZdZej Z ej Z ej � � Zdded �d �Z G d� d� � Z G d � dej � � ZdS )z)Various Windows specific bits and pieces.� N�win32z win32 only)�pipe�Popen�PIPE� PipeHandlei F)TT)�duplex� overlapped�bufsizec �R � t j d� t j � � t t � � � � �� � }| r*t j }t j t j z }||}}nt j }t j }d|}}|t j z }|d r|t j z }|d r t j }nd}dx} } t j ||t j d||t j t j � � } t j ||dt j t j |t j � � } t j | d�� � }|� d� � | | fS # | �t j | � � | �t j | � � � xY w)zELike os.pipe() but with overlapped support and using handles not fds.z\\.\pipe\python-pipe-{:d}-{:d}-)�prefixr � NT�r )�tempfile�mktemp�format�os�getpid�next� _mmap_counter�_winapi�PIPE_ACCESS_DUPLEX�GENERIC_READ� GENERIC_WRITE�PIPE_ACCESS_INBOUND�FILE_FLAG_FIRST_PIPE_INSTANCE�FILE_FLAG_OVERLAPPED�CreateNamedPipe� PIPE_WAIT�NMPWAIT_WAIT_FOREVER�NULL� CreateFile� OPEN_EXISTING�ConnectNamedPipe�GetOverlappedResult�CloseHandle)r r r �address�openmode�access�obsize�ibsize�flags_and_attribs�h1�h2�ovs �</opt/alt/python311/lib64/python3.11/asyncio/windows_utils.pyr r s� � ��o�1�8�8��I�K�K��m�,�,�.� .�/� /� /�G� � $��-���%��(=�=�� �'�����.���&���G�����5�5�H��!�}� 1��G�0�0���!�}� �#�8������N�B��� � $��X�w�0� �v�v�w�;�W�\�K� K�� � ��V�Q���g�.C��w�|�-� -�� � %�b�T� :� :� :�� ���t�$�$�$��2�v� ��� �>����#�#�#� �>����#�#�#� ���s �BE7 �7/F&c �p � e Zd ZdZd� Zd� Zed� � � Zd� Ze j d�d�Zej fd�Zd � Zd � ZdS )r z�Wrapper for an overlapped pipe handle which is vaguely file-object like. The IOCP event loop can use these instead of socket objects. c � � || _ d S �N��_handle��self�handles r/ �__init__zPipeHandle.__init__V s � ������ c �P � | j �d| j ��}nd}d| j j � d|� d�S )Nzhandle=�closed�<� �>)r4 � __class__�__name__r5 s r/ �__repr__zPipeHandle.__repr__Y s>