§
    (¶Õiõ  ã                   óN  — g d ¢Z ddlZddlZddlZddlZddlmZ ddlmZmZm	Z	m
Z
 ddlmZmZmZ ddlmZ  G d„ d	ej        ¦  «        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 ))ÚProcessÚcurrent_processÚactive_childrenÚfreeze_supportÚLockÚRLockÚ	SemaphoreÚBoundedSemaphoreÚ	ConditionÚEventÚBarrierÚQueueÚManagerÚPipeÚPoolÚJoinableQueueé    Né   )r   )r   r   r   r	   )r   r
   r   )r   c                   ó<   — 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         ú5/usr/lib/python3.11/multiprocessing/dummy/__init__.pyr   zDummyProcess.__init__$   sS   € ÝÔ×!Ò! $¨¨v°t¸TÀ6ÑJÔJÐJØˆŒ	Ý Ô2Ñ4Ô4ˆŒØ"ˆÔÝ&Ñ(Ô(ˆŒˆˆó    c                 ó,  — | j         t          ¦   «         ur4t          d                     | j         t          ¦   «         ¦  «        ¦  «        ‚d| _        t          | j         d¦  «        rd | j         j        | <   t          j         	                    | ¦  «         d S )Nz,Parent is {0!r} but current_process is {1!r}Tr   )
r    r   ÚRuntimeErrorÚformatr   Úhasattrr   r   r   Ústart©r!   s    r'   r-   zDummyProcess.start+   s‘   € ØŒ<�Ñ0Ô0Ð0Ð0ÝØ>×EÒEØ”L¥/Ñ"3Ô"3ñ5ô 5ñ6ô 6ð 6ð "ˆÔÝ�4”< Ñ-Ô-ð 	0Ø+/ˆDŒLÔ" 4Ñ(ÝÔ×Ò˜tÑ$Ô$Ð$Ð$Ð$r(   c                 ó@   — | j         r|                      ¦   «         sdS d S )Nr   )r   Úis_aliver.   s    r'   ÚexitcodezDummyProcess.exitcode5   s&   € àÔð 	 d§m¢m¡o¤oð 	Ø�1à�4r(   )Ú__name__Ú
__module__Ú__qualname__r   r-   Úpropertyr1   r   r(   r'   r   r   "   s]   € € € € € à!¨$°TÀÈ2ð )ð )ð )ð )ð%ð %ð %ð ðð ñ „Xðð ð r(   r   c                  ó¾   — t          ¦   «         j        } t          | ¦  «        D ],}|                     ¦   «         s|                      |d ¦  «         Œ-t          | ¦  «        S ©N)r   r   Úlistr0   Úpop)ÚchildrenÚps     r'   r   r   D   sV   € ÝÑ Ô Ô*€HÝ�(‰^Œ^ð "ð "ˆØ�zŠz‰|Œ|ð 	"Ø�LŠL˜˜DÑ!Ô!Ð!øÝ�‰>Œ>Ðr(   c                  ó   — d S r7   r   r   r(   r'   r   r   K   ó   € Ø€Dr(   c                   ó   — e Zd Zd„ Zd„ ZdS )Ú	Namespacec                ó:   — | j                              |¦  «         d S r7   )Ú__dict__Úupdate)r!   Úkwdss     r'   r   zNamespace.__init__S   s   € ØŒ×Ò˜TÑ"Ô"Ð"Ð"Ð"r(   c                 ó2  — t          | j                             ¦   «         ¦  «        }g }|D ]4\  }}|                     d¦  «        s|                     |›d|›�¦  «         Œ5|                     ¦   «          | j        j        ›dd                     |¦  «        ›d�S )NÚ_ú=ú(ú, ú))	r8   rA   ÚitemsÚ
startswithÚappendÚsortÚ	__class__r2   Újoin)r!   rJ   Útempr$   Úvalues        r'   Ú__repr__zNamespace.__repr__U   s˜   € Ý�T”]×(Ò(Ñ*Ô*Ñ+Ô+ˆØˆØ ð 	5ð 	5‰KˆD�%Ø—?’? 3Ñ'Ô'ð 5Ø—’ t t t¨U¨UÐ3Ñ4Ô4Ð4øØ�	Š	‰ŒˆØœ>Ô2Ð2Ð2°D·I²I¸d±O´O°O°OÐDÐDr(   N)r2   r3   r4   r   rR   r   r(   r'   r?   r?   R   s7   € € € € € ð#ð #ð #ðEð Eð Eð Eð Er(   r?   Tc                 ó,   — t          j         | |¦  «        S r7   )Úarray)ÚtypecodeÚsequenceÚlocks      r'   ÚArrayrX   a   s   € ÝŒ;�x Ñ*Ô*Ð*r(   c                   óR   — e Zd Zdd„Zed„ ¦   «         Zej        d„ ¦   «         Zd„ ZdS )ÚValueTc                 ó"   — || _         || _        d S r7   )Ú	_typecodeÚ_value)r!   rU   rQ   rW   s       r'   r   zValue.__init__e   s   € Ø!ˆŒØˆŒˆˆr(   c                 ó   — | j         S r7   ©r]   r.   s    r'   rQ   zValue.valuei   s
   € àŒ{Ðr(   c                 ó   — || _         d S r7   r_   )r!   rQ   s     r'   rQ   zValue.valuem   s   € àˆŒˆˆr(   c                 óR   — dt          | ¦  «        j        ›d| j        ›d| j        ›d�S )Nú<rG   rH   z)>)Útyper2   r\   r]   r.   s    r'   rR   zValue.__repr__q   s,   € € Ý# D™zœzÔ2Ð2Ð2°4´>°>°>À$Ä+À+À+ÐNÐNr(   N©T)r2   r3   r4   r   r5   rQ   ÚsetterrR   r   r(   r'   rZ   rZ   d   st   € € € € € ðð ð ð ð ðð ñ „Xðð „\ðð ñ „\ððOð Oð Oð Oð Or(   rZ   c                  ó0   — t           j        t                   S r7   )ÚsysÚmodulesr2   r   r(   r'   r   r   t   s   € ÝŒ;•xÔ Ð r(   c                  ó   — d S r7   r   r   r(   r'   Úshutdownrj   w   r=   r(   r   c                 ó(   — ddl m}  || ||¦  «        S )Né   )Ú
ThreadPool)Úpoolrm   )Ú	processesÚinitializerÚinitargsrm   s       r'   r   r   z   s(   € Ø!Ð!Ð!Ð!Ð!Ð!Øˆ:�i ¨hÑ7Ô7Ð7r(   rd   )NNr   )#Ú__all__r   rg   r   rT   Ú
connectionr   r   r   r   r	   r   r
   r   Úqueuer   r   r   r   Úcurrent_threadr   r   r   r   r   Úobjectr?   Údictr8   rX   rZ   r   rj   r   r   r   r(   r'   ú<module>rx      sÛ  ððð ð €ð Ð Ð Ð Ø 
€
€
€
Ø €€€Ø €€€à Ð Ð Ð Ð Ð Ø >Ð >Ð >Ð >Ð >Ð >Ð >Ð >Ð >Ð >Ð >Ð >Ø /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ø Ð Ð Ð Ð Ð ðð ð ð ð �9Ô#ñ ô ð ð< €ØÔ*€Ø7˜gÔ7Ñ9Ô9€€Ñ Ô Ô ðð ð ð	ð 	ð 	ð
Eð 
Eð 
Eð 
Eð 
E�ñ 
Eô 
Eð 
Eð €Ø€ð+ð +ð +ð +ðOð Oð Oð Oð OˆFñ Oô Oð Oð !ð !ð !ð	ð 	ð 	ð8ð 8ð 8ð 8ð €€€r(   