python (3.11.7)

(root)/
lib/
python3.11/
multiprocessing/
__pycache__/
resource_tracker.cpython-311.opt-1.pyc

e\(ddlZddlZddlZddlZddlZddlmZddlmZgdZe	edZ
ejejfZ
ddiZejd	krLddlZddlZe	ed
redejiedejiGd
deZGddeZeZejZejZejZejZdZdS)N)spawn)util)ensure_runningregister
unregisterpthread_sigmasknoopcdSNr
T/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/multiprocessing/resource_tracker.py<lambda>r!sDrposix
sem_unlink	semaphore
shared_memoryceZdZdS)ReentrantCallErrorN)__name__
__module____qualname__r
rrrr6sDrrcDeZdZdZdZdZdZdZdZdZ	dZ
d	Zd
S)ResourceTrackercRtj|_d|_d|_dSr)	threadingRLock_lock_fd_pidselfs r__init__zResourceTracker.__init__<s#_&&
			rc td)Nz8Reentrant call into the multiprocessing resource tracker)rr"s r_reentrant_call_errorz%ResourceTracker._reentrant_call_errorAs
!FHH	Hrcl|j5|jdkr |cdddS|j	ddddSt	j|jd|_t	j|jdd|_ddddS#1swxYwYdS)Nrr)r_recursion_countr&r osclosewaitpidr!r"s r_stopzResourceTracker._stopIs+
Z		z**,,q001133									
x								
HTXDHJty!$$$DI																		s1B)B)AB))B-0B-c8||jSr)rr r"s rgetfdzResourceTracker.getfdZsxrc,|j5|jdkr |cdddS|j|r	ddddStj|j	|jtj|jdn#t$rYnwxYwd|_d|_tjdg}	|tjn#t $rYnwxYwd}tj\}}	||t%j}|gt)jz}|d||zgz
}	t,r$t/jt.jt4t)j|||}t,r$t/jt.jt4n1#t,r%t/jt.jt4wwxYw||_||_n#tj|xYw	tj|n#tj|wxYw	ddddS#1swxYwYdS)zMake sure that resource tracker process is running.

        This can be run from any process.  Usually a child process will use
        the resource created by its parent.rNrzUresource_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_passfdsSIG_UNBLOCK)r#fds_to_passcmdrwexeargspids        rrzResourceTracker.ensure_running^s
Z<	<	z**,,q001133<	<	<	<	<	<	<	<	x#$$&&<	<	<	<	<	<	<	<	"""y,
49a000(D  	
IJJJK
""3:#4#4#6#67777



NC799DAq
""1%%%*,,ut@BBBsQw'U$S.v/?AQRRR-c4EEC$U.v/ACSTTT%U.v/ACSTTTTU		
y<	<	<	<	<	<	<	<	<	<	<	<	<	<	<	<	<	<	s1J	J	/J		!B+*J	+
B85J	7B88'J	 1DJ	
DJ	DJ	;A	H2AG2,H22.H  H2#I"2I		I"
J	"I88J		J
J
c^	tj|jddS#t$rYdSwxYw)z;Check that the pipe has not been closed by sending a probe.s
PROBE:0:noop
TF)r)writer OSErrorr"s rr0zResourceTracker._check_alivesI	
HTX01114			55	s
,,c4|d||dS)z0Register name of resource with resource tracker.REGISTERN_sendr#namertypes   rrzResourceTracker.registers

:tU+++++rc4|d||dS)z2Unregister name of resource with resource tracker.
UNREGISTERNrNrPs   rrzResourceTracker.unregisters

<u-----rcT	|n+#t$rtjd|d|dYnwxYwd|||d}t
|dkrtdtj	|j
|}dS)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
	<!!!!!	<	<	<

M;;;&*;;;
<
<
<
<
<	<$$S$66==gFFs88c>>^,,,$(C((s%??N)rrrr$r&r,r.rr0rrrOr
rrrr:s
HHH"AAAF			,,,...rrctjtjtjtjtjtjtr$tjtjttj	tj
fD]'}	|#t$rY$wxYwdtD}	t|d5}|D]	}	|dd\}}}t|d}|t)d|d||dkr|||n;|d	kr|||n|d
krnt/d|z#t$r,	tjtjn#YnxYwYwxYw	dddn#1swxYwY|D]\}}|r8	t7jdt;||fzn#t$rYnwxYw|D]P}		t||n1#t$r$}	t7jd
|d|	Yd}	~	nd}	~	wwxYwL#wxYwdS#|D]\}}|r8	t7jdt;||fzn#t$rYnwxYw|D]P}		t||n1#t$r$}	t7jd
|d|	Yd}	~	nd}	~	wwxYwL#wxYwwxYw)zRun resource tracker.c,i|]}|tSr
)set).0rRs  r
<dictcomp>zmain.<locals>.<dictcomp>s===eUCEE===rrbrV:NzCannot register z. for automatic cleanup: unknown resource type rMrTPROBEzunrecognized command %rzQresource_tracker: There appear to be %d leaked %s objects to clean up at shutdownzresource_tracker: z: )r=SIGINTSIG_IGNSIGTERMr<r	rAr?r5stdinstdoutr*r8_CLEANUP_FUNCSkeysopenstripdecodesplitgetrZaddremoveRuntimeError
excepthookexc_infoitemsr2r3rY)
fdfcachelinerCrQrRcleanup_funcrtype_cachees
          rmainr~sM&-000
M&.&.111Ev13CDDDi
$	
GGIIII			D	
>=~':':'<'<===E-
"d^^	q

'+zz||':':7'C'C'I'I#'N'N$Cu#1#5#5eT#B#BL#+(=t==5:==>>>j((e((....,,e++D1111*+Ds+JKKK 777	#
															2#(++--		E;
M#N#&{#3#3U";#<====!D#



N&u-d3333$NNN 

DDD!!&LMMMMMMMMNDDDD

		%++--		E;
M#N#&{#3#3U";#<====!D#



N&u-d3333$NNN 

DDD!!&LMMMMMMMMNDDDD

	s!B..
B;:B;"K2H
9C
GH

G=G21G=2G6	4G=9H
<G==H
K
HKHK4&I
I('I(1JJ9
J5J0+J90J55J99J;M*&LM*
L	M*L	M*L10M#1
M;MM#MM#"M*#M%%M*)r)r=r5rr2rr__all__hasattrr<rergr?rjrQ_multiprocessing_posixshmemupdater
shm_unlinkrsrobjectr_resource_trackerrrrr.r~r
rr<module>rs$
			








6
6
6 122
M6>2LL7gw..)4
			/
								MMMMMfMMM`$O%%"1%

)
<<<<<r