Server: appserver-7f0f8755-nginx-15961cad18524ec5a9db05f2a6a7e440
Current directory: /usr/lib/python3.11/multiprocessing/__pycache__
Software: nginx/1.27.5
Shell Command
Create a new file
Upload file
File: forkserver.cpython-311.pyc
� ��hn/ � �D � d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZddl m Z ddl mZ ddlm Z ddl mZ ddl mZ ddl mZ g d �Zd Z ej d� � Z G d� d e� � Zdd�Zd� Zd� Zd� Z e� � Zej Zej Zej Zej ZdS )� N� )� connection)�process)� reduction)�resource_tracker)�spawn)�util)�ensure_running�get_inherited_fds�connect_to_new_process�set_forkserver_preload� �qc �8 � e Zd Zd� Zd� Zd� Zd� Zd� Zd� Zd� Z dS ) � ForkServerc �~ � d | _ d | _ d | _ d | _ t j � � | _ dg| _ d S )N�__main__)�_forkserver_address�_forkserver_alive_fd�_forkserver_pid�_inherited_fds� threading�Lock�_lock�_preload_modules��selfs �1/usr/lib/python3.11/multiprocessing/forkserver.py�__init__zForkServer.__init__" sA � �#'�� �$(��!�#���"����^�%�%�� �!+������ c �n � | j 5 | � � � d d d � � d S # 1 swxY w Y d S �N)r �_stop_unlockedr s r �_stopzForkServer._stop* s� � � �Z� "� "����!�!�!� "� "� "� "� "� "� "� "� "� "� "� "���� "� "� "� "� "� "s �*�.�.c � � | j �d S t j | j � � d | _ t j | j d� � d | _ t j | j � � st j | j � � d | _ d S )Nr ) r �os�closer �waitpidr �is_abstract_socket_namespacer �unlinkr s r r# zForkServer._stop_unlocked/ s� � ���'��F� ���*�+�+�+�$(��!� � �4�'��+�+�+�#����0��1I�J�J� 0��I�d�.�/�/�/�#'�� � � r c �n � t d� | j D � � � � st d� � �|| _ dS )z>Set list of module names to try to load in forkserver process.c 3 �B K � | ]}t |� � t u V � �d S r" )�type�str)�.0�mods r �
z4ForkServer.set_forkserver_preload.
.
@ s- � � � �E�E��4��9�9��#�E�E�E�E�E�Er z&module_names must be a list of stringsN)�allr � TypeError)r � modules_namess r r z!ForkServer.set_forkserver_preload> sB � ��E�E�t�/D�E�E�E�E�E� F��D�E�E�E� -����r c � � | j S )z�Return list of fds inherited from parent process. This returns None if the current process was not started by fork server. )r r s r r zForkServer.get_inherited_fdsD s � � �"�"r c �� � | � � � t |� � dz t k rt d� � �t j t j � � 5 }|� | j � � t j � � \ }}t j � � \ }}||| j t j � � g}||z } t j ||� � ||ft j |� � t j |� � cddd� � S # t j |� � t j |� � � xY w# t j |� � t j |� � w xY w# 1 swxY w Y dS )a; Request forkserver to create a child process. Returns a pair of fds (status_r, data_w). The calling process can read the child process's pid and (eventually) its returncode from status_r. The calling process should write to data_w the pickled preparation and process data. � ztoo many fdsN)r �len�MAXFDS_TO_SEND� ValueError�socket�AF_UNIX�connectr r&