| Server IP : 162.241.219.206 / Your IP : 216.73.216.195 Web Server : Apache System : Linux box5669.bluehost.com 5.14.0-687.15.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Jun 11 08:51:45 EDT 2026 x86_64 User : signavd5 ( 2863) PHP Version : 8.3.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/libexec/oracle-cloud-agent/plugins/osms/multiprocessing/ |
Upload File : |
a
���d�! � @ s� d dl Z d dlZd dlZd dlZd dlZddlmZ ddlmZ g d�Ze ed�Z
ejejfZ
ddd � iZe jd
kr�d dlZd dlZe�ejejd�� G dd
� d
e�Ze� ZejZejZejZejZdd� ZdS )� N� )�spawn)�util)�ensure_running�register�
unregister�pthread_sigmask�noopc C s d S �N� r r r �8/usr/lib64/python3.9/multiprocessing/resource_tracker.py�<lambda>! � r
�posix)� semaphore�
shared_memoryc @ sL e Zd Zdd� Zdd� Zdd� Zdd� Zd d
� Zdd� Zd
d� Z dd� Z
dS )�ResourceTrackerc C s t �� | _d | _d | _d S r
)� threading�Lock�_lock�_fd�_pid��selfr r r �__init__0 s
zResourceTracker.__init__c C sj | j �P | jd u r"W d � d S t�| j� d | _t�| jd� d | _W d � n1 s\0 Y d S )Nr )r r �os�close�waitpidr r r r r �_stop5 s
zResourceTracker._stopc C s | � � | jS r
)r r r r r r �getfdB s zResourceTracker.getfdc C s� | j ��� | jdur~| �� r,W d � dS t�| j� z| jdurRt�| jd� W n tyf Y n0 d| _d| _t� d� g }z|�
tj�
� � W n ty� Y n0 d}t�� \}}z�z�|�
|� t�� }|gt�� }|d|| g7 }z:t�rt�tjt� t�|||�}W t�r@t�tjt� nt�r>t�tjt� 0 W n t�|� � Y n0 || _|| _W t�|� nt�|� 0 W d � n1 �s�0 Y dS )z�Make sure that resource tracker process is running.
This can be run from any process. Usually a child process will use
the resource created by its parent.Nr zUresource_tracker: process died unexpectedly, relaunching. Some resources might leak.z:from multiprocessing.resource_tracker import main;main(%d)z-c)r r �_check_aliver r r r �ChildProcessError�warnings�warn�append�sys�stderr�fileno� Exception�piper �get_executabler �_args_from_interpreter_flags�
_HAVE_SIGMASK�signalr � SIG_BLOCK�_IGNORED_SIGNALS�spawnv_passfds�SIG_UNBLOCK)r �fds_to_pass�cmd�r�w�exe�args�pidr r r r F sN
�
zResourceTracker.ensure_runningc C s0 zt �| jd� W n ty& Y dS 0 dS dS )z;Check that the pipe has not been closed by sending a probe.s
PROBE:0:noop
FTN)r �writer �OSErrorr r r r r � s
zResourceTracker._check_alivec C s | � d||� dS )z0Register name of resource with resource tracker.�REGISTERN��_send�r �name�rtyper r r r � s zResourceTracker.registerc C s | � d||� dS )z2Unregister name of resource with resource tracker.�
UNREGISTERNr<