g\(ddlZddlZddlZddlZddlZddlmZddlmZgdZe edZ ejejfZ ddiZejd k(rKddlZddlZe ed rej%d ej&iej%d ej(iGd deZGddeZeZej4Zej6Zej8Zej:ZdZy)N)spawn)util)ensure_runningregister unregisterpthread_sigmasknoopcyNr G/opt/alt/python312/lib64/python3.12/multiprocessing/resource_tracker.pyr!sDrposix sem_unlink semaphore shared_memoryc eZdZy)ReentrantCallErrorN)__name__ __module__ __qualname__r rrrr6srrcBeZdZdZdZdZdZdZdZdZ dZ d Z y ) ResourceTrackercRtj|_d|_d|_yr ) threadingRLock_lock_fd_pidselfs r__init__zResourceTracker.__init__<s__&  rctd)Nz8Reentrant call into the multiprocessing resource tracker)rr"s r_reentrant_call_errorz%ResourceTracker._reentrant_call_errorAs ! FH Hrcx|j5|jjdkDr|jcdddS|j dddyt j |jd|_t j |jdd|_dddy#1swYyxYw)Nrr)r_recursion_countr&r osclosewaitpidr!r"s r_stopzResourceTracker._stopIs ZZzz**,q0113 Z xxZ HHTXX DH JJtyy! $DIZZs-B0 B0A B00B9c:|j|jSr )rr r"s rgetfdzResourceTracker.getfdZs xxrcF |j5|jjdkDr|jcdddS|j|j r dddyt j |j |j t j|jdd|_d|_tjdg} |jtjjd}t j"\}} |j|t%j&}|gt)j*z}|d||zgz } t,r(t/j0t.j2t4t)j6|||}t,r)t/j0t.j8t4 ||_||_ t j | dddy#t$rYcwxYw#t $rY wxYw#t,r)t/j0t.j8t4wwxYw#t j |xYw#t j |wxYw#1swYyxYw)NrrzUresource_tracker: process died unexpectedly, relaunching. Some resources might leak.z:from multiprocessing.resource_tracker import main;main(%d)z-c)rr(r&r _check_aliver)r*r!r+ChildProcessErrorwarningswarnappendsysstderrfileno Exceptionpiperget_executabler_args_from_interpreter_flags _HAVE_SIGMASKsignalr SIG_BLOCK_IGNORED_SIGNALSspawnv_passfds SIG_UNBLOCK)r# fds_to_passcmdrwexeargspids rrzResourceTracker.ensure_running^s /ZZzz**,q0113Zxx#$$&Z"yy, 499a0    IJK ""3::#4#4#67OC779DAq ""1%**,ut@@BBsQw'U$..v/?/?AQR--c4EC$..v/A/ACST   yZ$)  *%..v/A/ACST%    yZs-JJ+J ,H7%J-H J$AI",AH.1/I" I=/J HJHJ H+'J*H++J.1II""I::I==JJJ cf tj|jdy#t$rYywxYw)Ns PROBE:0:noop TF)r)writer OSErrorr"s rr0zResourceTracker._check_alives8I  HHTXX0 1  s $ 00c, |jd||y)NREGISTER_sendr#namertypes rrzResourceTracker.registers> :tU+rc, |jd||y)N UNREGISTERrNrPs rrzResourceTracker.unregisters@ <u-rc2 |jdj |||j d}t |dkDr tdtj|j|}y#t$rtjd|d|dYwxYw)NzSResourceTracker called reentrantly for resource cleanup, which is unsupported. The z object z might leak.z {0}:{1}:{2} asciiiz msg too long) rrr2r3formatencodelen ValueErrorr)rJr )r#rCrQrRmsgnbytess rrOzResourceTracker._sends <    !$$S$6==gF s8c>^, ,$((C(" < MMgXdX\; <  >j(e ((. ,e ++D1*+Ds+JKK!2#(++- E;MM#N#&{#3U";#<= $N&u-d3$#0?    >*! 7 %^>!%N D!&LMMN%#(++- E;MM#N#&{#3U";#<=!#N&u-d3$N D!&LMMND$#0s8H  H5 J/IB#H!+I.J/#I*9I9 HH! I+$III IIIII'#J/* I65I69 J'J"J*"J''J**J,/M  #K-,M - K9 6M 8K9 9M LM M L; 6M;M MM M M )r)r=r5rr2rr__all__hasattrr<rarcr?rfrQ_multiprocessing _posixshmemupdater shm_unlinkrprobjectr_resource_trackerrrrr.r{r rrrs$  6 12 MM6>>2 L77g. )44  //   MfM`$%"11  % %  ) ) <r