
    sh                         S SK r S SKJr  S SKrS SKJr  S SKJrJ	r	  S r
 " S S\	5      r\S:X  a  \R                  " 5         gg)	    N)Queue)cuda)unittestContextResettingTestCasec                 N    [         R                  " S5        [         R                  " 5       n[        R                  " S5      n[         R
                  " X!S9nUR                  5         AA[         R                  " 5         g ! [         a  nU R                  U5         S nAg S nAff = f)Nr   d   )stream)
r   select_devicer	   nparange	to_devicesynchronizeclose	Exceptionput)exception_queuer	   AdAes        /Users/tiagomarins/Projetos/claudeai/copy_bank/venv/lib/python3.13/site-packages/numba/cuda/tests/cudadrv/test_select_device.py	newthreadr      sw    
1IIcN^^A-

 As   A<A? ?
B$	BB$c                       \ rS rSrS rSrg)TestSelectDevice   c                 n   [        5       n[        S5       H=  n[        R                  " [        U4S9nUR                  5         UR                  5         M?     / nUR                  5       (       d6  UR                  UR                  5       5        UR                  5       (       d  M6  U R                  U/ 5        g )N
   )targetargs)r   range	threadingThreadr   startjoinemptyappendgetassertEqual)selfr   it
exceptionss        r   test_select_device#TestSelectDevice.test_select_device   s    'rA  	8JKAGGIFFH 
 
!''))o1134 "''))R(     N)__name__
__module____qualname____firstlineno__r,   __static_attributes__r/   r.   r   r   r      s    
)r.   r   __main__)r    queuer   numpyr   numbar   numba.cuda.testingr   r   r   r   r0   mainr/   r.   r   <module>r;      s@        A)/ ) zMMO r.   