a
�DOg � @ s� d dl Z d dlZd dlZd dlZd dlZddlmZ ddlmZ ddlm Z dgZ
ejdkrxe
dg7 Z
G d d� de�Z
ne
d
g7 Z
G dd
� d
e�ZG dd
� d
e�Ze� ZejZdS )� N� )�process)� reduction)�util�stop�win32� DupSocketc @ s e Zd Zdd� Zdd� ZdS )r c s( |� � � � fdd�}t�|� j�| _d S )Nc s � � |�}| �|� d S �N)�share�
send_bytes)�conn�pidr
�Znew_sock� �7/usr/lib64/python3.9/multiprocessing/resource_sharer.py�send s
z DupSocket.__init__.<locals>.send)�dup�_resource_sharer�register�close�_id)�self�sockr r r r �__init__ s zDupSocket.__init__c C sB t �| j��"}|�� }t�|�W d � S 1 s40 Y d S r )r �get_connectionr �
recv_bytes�socketZ fromshare)r r r
r r r �detach$ s zDupSocket.detachN��__name__�
__module__�__qualname__r r r r r r r s �DupFdc @ s e Zd Zdd� Zdd� ZdS )r"