
    Sf                        d dl Z d dlZd dlZd dlZd dl mZmZmZmZ d dl mZ d dl	m
Z
 d dlmZ g dZ G d de j                  Z	 e j        Zn# e$ r
 e j        ZY nw xY w G d	 d
e          ZeZe j        Z ej                     e            _        d Zd Z G d de          ZeZeZddZ G d de          Zd Z d Z!ddZ"e
Z#dS )    N)LockRLock	SemaphoreBoundedSemaphore)Event)Queue)Pipe)Processcurrent_processactive_childrenfreeze_supportr   r   r   r   	Conditionr   r   Managerr	   PoolJoinableQueuec                   <    e Zd Zddddi fdZd Zed             ZdS )DummyProcessN c                     t           j                            | |||||           d | _        t	          j                    | _        d| _        t                      | _	        d S )NF)
	threadingThread__init___pidweakrefWeakKeyDictionary	_children_start_calledr   _parent)selfgrouptargetnameargskwargss         I/var/www/html/env/lib/python3.11/site-packages/billiard/dummy/__init__.pyr   zDummyProcess.__init__<   sS    !!$vtT6JJJ	 244"&((    c                     | j         t                      u sJ d| _        t          | j         d          rd | j         j        | <   t
          j                            |            d S )NTr   )r   r   r   hasattrr   r   r   startr   s    r%   r)   zDummyProcess.startC   sc    |000000!4<-- 	0+/DL"4(t$$$$$r&   c                 @    | j         r|                                 sdS d S )Nr   )r   is_aliver*   s    r%   exitcodezDummyProcess.exitcodeJ   s&     	dmmoo 	14r&   )__name__
__module____qualname__r   r)   propertyr-   r   r&   r%   r   r   :   s]        !$T2 ) ) ) )% % %   X  r&   r   c                   Z    e Zd Zej        d         dk    r	ej        ZdS ej        j        ZdS )r   r      N)	r.   r/   r0   sysversion_info
_Condition	notifyAll
notify_all__func__r   r&   r%   r   r   X   s8        
a)


)2


r&   r   c                      t                      j        } t          |           D ],}|                                s|                     |d            -t          |           S N)r   r   listr,   pop)childrenps     r%   r   r   d   sV      *H(^^ " "zz|| 	"LLD!!!>>r&   c                      d S r;   r   r   r&   r%   r   r   l       Dr&   c                       e Zd Zd Zd ZdS )	Namespacec                 :    | j                             |           d S r;   )__dict__update)r   kwdss     r%   r   zNamespace.__init__r   s    T"""""r&   c                 >   t          | j                                                  }g }|D ]4\  }}|                    d          s|                    |d|           5|                                 | j        j        dt          	                    d|          dS )N_=(, ))
r<   rE   items
startswithappendsort	__class__r.   strjoin)r   rN   tempr"   values        r%   __repr__zNamespace.__repr__u   s    T]((**++  	5 	5KD%??3'' 5tttUU3444		>222CHHT44H4H4H4HIIr&   N)r.   r/   r0   r   rW   r   r&   r%   rC   rC   p   s7        # # #J J J J Jr&   rC   Tc                 ,    t          j         | |          S r;   )array)typecodesequencelocks      r%   Arrayr]      s    ;x***r&   c                   @    e Zd ZddZd Zd Z eee          Zd ZdS )ValueTc                 "    || _         || _        d S r;   )	_typecode_value)r   rZ   rV   r\   s       r%   r   zValue.__init__   s    !r&   c                     | j         S r;   rb   r*   s    r%   _getz
Value._get   s
    {r&   c                     || _         d S r;   rd   )r   rV   s     r%   _setz
Value._set   s    r&   c                 R    dt          |           j        d| j        d| j        dS )N<rK   rL   z)>)typer.   ra   rb   r*   s    r%   rW   zValue.__repr__   s1     !%d!4!4!4!%> 	>r&   NT)	r.   r/   r0   r   re   rg   r1   rV   rW   r   r&   r%   r_   r_      sf               HT4  E> > > > >r&   r_   c                  0    t           j        t                   S r;   )r4   modulesr.   r   r&   r%   r   r      s    ;x  r&   c                      d S r;   r   r   r&   r%   shutdownro      rA   r&   r   c                 (    ddl m}  || ||          S )Nr   )
ThreadPool)billiard.poolrq   )	processesinitializerinitargsrq   s       r%   r   r      s(    ((((((:ih777r&   rk   )NNr   )$r   r4   r   rY   r   r   r   r   r   queuer   billiard.connectionr	   __all__r   r   r6   AttributeErrorr   r
   current_threadr   r   r   r   r   objectrC   dictr<   r]   r_   r   ro   r   r   r   r&   r%   <module>r}      s(  N     



   > > > > > > > > > > > >             $ $ $ $ $ $      9#   0%%JJ % % %$JJJ%3 3 3 3 3
 3 3 3 *7g799     	 	 	J J J J J J J J + + + +> > > > >F > > >$! ! !	 	 	8 8 8 8
 s   A AA