3 \/ã@sRdddgZddlmZdgZGdd„deƒZdd„Zd d d„ZGd d „d eƒZdS) ÚClientÚListenerÚPipeé)ÚQueueNc@sBeZdZddd„Zdd„Zdd„Zed d „ƒZd d „Zd d„Z dS)rNécCst|ƒ|_dS)N)rÚ_backlog_queue)ÚselfÚaddressZfamilyZbacklog©r ú8/usr/lib64/python3.6/multiprocessing/dummy/connection.pyÚ__init__szListener.__init__cCst|jjƒŽS)N)Ú ConnectionrÚget)rr r r ÚacceptszListener.acceptcCs d|_dS)N)r)rr r r ÚcloseszListener.closecCs|jS)N)r)rr r r ÚszListener.cCs|S)Nr )rr r r Ú __enter__szListener.__enter__cCs |jƒdS)N)r)rÚexc_typeÚ exc_valueÚexc_tbr r r Ú__exit__"szListener.__exit__)NNr) Ú__name__Ú __module__Ú __qualname__r rrÚpropertyr rrr r r r rs   cCs&tƒtƒ}}|j||fƒt||ƒS)N)rÚputr )r Ú_inÚ_outr r r r&sTcCs"tƒtƒ}}t||ƒt||ƒfS)N)rr )ZduplexÚaÚbr r r r,sc@s6eZdZdd„Zd dd„Zdd„Zdd „Zd d „Zd S)r cCs,||_||_|j|_|_|j|_|_dS)N)rrrÚsendZ send_bytesrZrecvZ recv_bytes)rrrr r r r 3szConnection.__init__çc CsN|jjƒdkrdS|dkrdS|jj�|jjj|ƒWdQRX|jjƒdkS)NrTgF)rZqsizeZ not_emptyÚwait)rZtimeoutr r r Úpoll9s zConnection.pollcCsdS)Nr )rr r r rBszConnection.closecCs|S)Nr )rr r r rEszConnection.__enter__cCs |jƒdS)N)r)rrrrr r r rHszConnection.__exit__N)r!)rrrr r#rrrr r r r r 1s  r )T) Ú__all__ZqueuerZfamiliesÚobjectrrrr r r r r Ú s