Ë
    âQ(h*  ã                   óT   — d dl Z d dlZd dlZd dlmZ d dlmZ d dlm	Z	m
Z
mZ d„ Zd„ Zy)é    N)Úassert_)Úraises)ÚReentrancyLockÚnon_reentrantÚReentrancyErrorc                  ó>  ‡‡‡‡— t        d«      ŠdgŠg Šˆˆˆfd„Št        d«      D � cg c]  } t        j                  | fˆfd„	¬«      ‘Œ }} |D ]  }|j	                  «        Œ |D ]  }|j                  «        Œ dj                  ‰«      Št        ‰ ‰«       y c c} w )NÚfailureFc                 ó  •— 	 ‰5  t        ‰d    «       d‰d<   t        j                  d| z  «       t        ‰d   «       d‰d<   d d d «       y # 1 sw Y   y xY w# t        $ r' ‰j	                  t        j                  d«      «       Y y w xY w)Nr   Tgš™™™™™¹?Fé   )r   ÚtimeÚsleepÚ	ExceptionÚappendÚ	tracebackÚ
format_exc)ÚkÚexceptions_raisedÚfailflagÚlocks    €€€úa/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/scipy/_lib/tests/test__threadsafety.pyÚworkerz%test_parallel_threads.<locals>.worker   s…   ø€ ð	>Øñ $Ü˜H Q™K˜Ô(Ø"�˜‘Ü—
‘
˜3 ™7Ô#Ü˜ ™Ô$Ø#�˜‘÷$÷ $ñ $ûô ò 	>Ø×$Ñ$¤Y×%9Ñ%9¸!Ó%<Ö=ð	>ús/   ƒA …A AÁA ÁAÁA ÁA Á-B
Â	B
é   c                 ó   •—  ‰| «      S ©N© )r   r   s    €r   ú<lambda>z'test_parallel_threads.<locals>.<lambda>!   s   ø€ ±6¸!³9€ ó    )Útargetú
)r   ÚrangeÚ	threadingÚThreadÚstartÚjoinr   )r   ÚthreadsÚtr   r   r   r   s      @@@@r   Útest_parallel_threadsr'      s¨   û€ ô ˜)Ó$€Dàˆw€HØÐö	>ô ˜a›ö"Øô ×Ñ°Ô'<Ö=ð "€Gð "àò ˆØ	�‰�	ðàò ˆØ	�‰�ðð Ÿ	™	Ð"3Ó4ÐÜÐ!Ð!Ð#4Õ5ùò"s   ©"Bc                  óL   ‡ — t        «       ˆ fd„«       Š t        t        ‰ d«       y )Nc                 ó   •—  ‰| «      S r   r   )ÚxÚfuncs    €r   r+   ztest_reentering.<locals>.func/   s   ø€ á�A‹wˆr   r   )r   Úassert_raisesr   )r+   s   @r   Útest_reenteringr-   ,   s'   ø€ ô ƒ_óó ðô ”/ 4¨Õ+r   )r!   r   r   Únumpy.testingr   Úpytestr   r,   Úscipy._lib._threadsafetyr   r   r   r'   r-   r   r   r   ú<module>r1      s%   ðÛ Û Û å !Ý *ç SÑ Sò6óB,r   