VH|u d dl Z e j dk r ed d dlZd dlZd dlZd dlZd dlZd dlZd dl Z dZ dZej Zej Z ej Zddedd Z G d d Z G d d ej ZdS ) Nwin32z win32 only)pipePopenPIPE PipeHandlei F)TT)duplex overlappedbufsizec T 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}d x} } 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)Nz\\.\pipe\python-pipe-{:d}-{:d}-)prefixr Tr )tempfilemktempformatosgetpidnext _mmap_counter_winapiPIPE_ACCESS_DUPLEXGENERIC_READ GENERIC_WRITEPIPE_ACCESS_INBOUNDFILE_FLAG_FIRST_PIPE_INSTANCEFILE_FLAG_OVERLAPPEDCreateNamedPipe PIPE_WAITNMPWAIT_WAIT_FOREVERNULL CreateFile OPEN_EXISTINGConnectNamedPipeGetOverlappedResultCloseHandle)r r r addressopenmodeaccessobsizeibsizeflags_and_attribsh1h2ovs