python (3.12.0)

(root)/
lib/
python3.12/
multiprocessing/
__pycache__/
synchronize.cpython-312.opt-1.pyc

̑e/gdZddlZddlZddlZddlZddlZddlmZddlmZddlm	Z		ddlm
Z
mZe
ed	\ZZejj"ZGd
deZ
Gdd
e
ZGddeZGdde
ZGdde
ZGddeZGddeZGddej2Zy#e$r	edwxYw))LockRLock	SemaphoreBoundedSemaphore	ConditionEventN)context)process)util)SemLock
sem_unlinkzThis platform lacks a functioning sem_open implementation, therefore, the required synchronization primitives needed will not function, see issue 3770.creZdZejZdZedZdZ	dZ
dZdZdZ
edZy	)
r
c|tjj}|jdk(|_t
jdk(xs|j}tdD]2}	tj||||j|x}|_ntdtjd|jz|j!t
jdk7rd}tj"|||jj$`ddlm}	|	|jj$d	tj*|tj,|jj$fd
yy#t$rY!wxYw)Nforkwin32dzcannot find name for semaphorezcreated semlock with handle %sc8|jjyN)_semlock_after_fork)objs O/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/multiprocessing/synchronize.pyrz%SemLock.__init__.<locals>._after_forkGs((*r	)register	semaphorer)exitpriority)r
_default_contextget_contextget_start_method_is_fork_ctxsysplatformrange_multiprocessingr

_make_namerFileExistsErrorrdebughandle
_make_methodsregister_after_forknameresource_trackerrFinalize_cleanup)
selfkindvaluemaxvaluectx
unlink_nowislrrs
          r__init__zSemLock.__init__2sP;**668C002f<\\W,A0A0A
s
	DA
%5%=%=%4??+<&  T]
	D""BCC

3bii?@<<7"
+$$T;7==)
3T]]''5MM$ 0 04==3E3E2G'(
*
*#

s).E::	FFc8ddlm}t|||dy)Nr	)
unregisterr)r.r;r)r-r;s  rr0zSemLock._cleanupTs044%rcp|jj|_|jj|_yr)racquirereleaser1s rr+zSemLock._make_methodsZs$}},,}},,rc6|jjSr)r	__enter__r?s rrAzSemLock.__enter__^s}}&&((rc4|jj|Sr)r__exit__r1argss  rrCzSemLock.__exit__as%t}}%%t,,rcTtj||j}tjdk(r.tj
j
|j}n#|jrtd|j}||j|j|jfS)NrzA SemLock created in a fork context is being shared with a process in a spawn context. This is not supported. Please use the same context to create multiprocessing objects and Process.)
r
assert_spawningrr#r$get_spawning_popenduplicate_for_childr*r"RuntimeErrorr2r4r-)r1r8hs   r__getstate__zSemLock.__getstate__ds%
]]<<7"**,@@KA  "$JKK		A277BKK11rctjj||_t	j
d|dz|j
d|_y)Nz recreated blocker with handle %rrF)r&r
_rebuildrrr)r+r"r1states  r__setstate__zSemLock.__setstate__rsD(00995A


5a@A!rc|tjjddttj
S)N	semprefix-)rcurrent_process_confignextr
_randrrr'zSemLock._make_nameys/!113;;KHw}}-/	/rN)__name__
__module____qualname__tempfile_RandomNameSequencerXr9staticmethodr0r+rArCrLrQr'rYrrr
r
.sY(H((*E *D&&
-)-2"//rr
c eZdZddZdZdZy)rcHtj|t|t|yNr5)r
r9	SEMAPHORE
SEM_VALUE_MAXr1r3r5s   rr9zSemaphore.__init__sy%CHrc6|jjSr)r
_get_valuer?s r	get_valuezSemaphore.get_values}}''))rc	|jj}d|jjd|dS#t$rd}Y*wxYw)Nunknown<(value=)>)rrh	Exception	__class__rZr1r3s  r__repr__zSemaphore.__repr__sG	MM,,.E$(>>#:#:EBB	E	s9AANr	)rZr[r\r9rirrrYrrrrsI*CrrceZdZddZdZy)rc@tj|t|||yrbr
r9rdrfs   rr9zBoundedSemaphore.__init__sy%C@rc	|jj}d|jjd|d|jj
dS#t$rd}YAwxYw)Nrkrlrmz, maxvalue=rn)rrhrorprZr4rqs  rrrzBoundedSemaphore.__repr__sY	MM,,.E''

0F0FH	H	E	sAAANrsrZr[r\r9rrrYrrrrsAHrrceZdZdZdZy)rc@tj|tdd|yNr	rcrvr1r5s  rr9z
Lock.__init__sy!QC8rc	|jjrdtjj}tjjdk7rg|dtjjzz
}nB|jjdk(rd}n"|jjdkDrd}nd}d	|jjd
|dS#t$rd}Y*wxYw)N
MainThread|r	NonerSomeOtherThreadSomeOtherProcessrkrlz(owner=rn)r_is_minerrUr-	threadingcurrent_threadrh_countrorprZ)r1r-s  rrrz
Lock.__repr__s	}}%%'..055++-22lBC)":":"<"A"AAAD))+q0%%'!+()$(>>#:#:DAA	D	sCCC-,C-NrxrYrrrrs
9BrrceZdZdZdZy)rc@tj|tdd|yr{)r
r9RECURSIVE_MUTEXr|s  rr9zRLock.__init__s1#>rc2	|jjr~tjj}tjjdk7r$|dtjjzz
}|jj}nK|jjdk(rd\}}n(|jjdkDrd\}}nd\}}d	|jjd
|d|dS#t$rd\}}Y0wxYw)
Nr~rr	)rrr)rnonzero)rr)rkrkrl(, rn)rrrrUr-rrrrhrorprZ)r1r-counts   rrrzRLock.__repr__s
	/}}%%'..055++-22lBC)":":"<"A"AAAD

,,.))+q0'e%%'!+:e;e"&!8!8$FF	/.KD%	/sC#DDDNrxrYrrrrs
?GrrcVeZdZd
dZdZdZdZdZdZdZ	d
d	Z
dd
ZdZd
dZ
y)rNc|xs|j|_|jd|_|jd|_|jd|_|j
yNr)r_lockr_sleeping_count_woken_count_wait_semaphorer+)r1lockr5s   rr9zCondition.__init__sS(SYY[
"}}Q/MM!,"}}Q/rctj||j|j|j|j
fSr)r
rGrrrrr?s rrLzCondition.__getstate__s:%

D00!!4#7#79	9rcZ|\|_|_|_|_|j	yr)rrrrr+rOs  rrQzCondition.__setstate__s*49	2T)	
	D0rc6|jjSr)rrAr?s rrAzCondition.__enter__szz##%%rc4|jj|Sr)rrCrDs  rrCzCondition.__exit__s"tzz""D))rcp|jj|_|jj|_yr)rr=r>r?s rr+zCondition._make_methodss$zz))zz))rc	|jjj|jjjz
}d|j
jd|jd|dS#t$rd}Y7wxYw)Nrkrlrrrn)rrrhrrorprZr)r1num_waiterss  rrrzCondition.__repr__ss	$//88CCE,,55@@BCK"&!8!8$**kRR	$#K	$sA	A55BBc&|jj|jjj	}t|D]}|jj	|jjd||jjt|D]}|jjS#|jjt|D]}|jjwxYw)NT)	rr>rrrr%rr=r)r1timeoutrr7s    rwaitzCondition.waits
	
$$&

##**,u	!AJJ 	!		%''//g>
%%'5\
%

""$
%
%%'5\
%

""$
%s
*C

ADc8|jjdr7|jjd}|jjdr7d}||kr[|jjdr@|jj	|dz
}||kr|jjdr@|rdt|D]}|jj|jjdr	|jjdryyy)NFrr	)rr=rrr>r%)r1nressleepersr7s     rnotifyzCondition.notifys''.&&..u5C''.
lt33;;EB  ((*MHlt33;;EB8_
,!!))+
,&&..u5&&..u5rcD|jtjy)N)r)rr#maxsizer?s r
notify_allzCondition.notify_all/sckk"rc|}|r|S|tj|z}nd}d}|s<||tjz
}|dkr	|S|j|}|s<|Sr)time	monotonicr)r1	predicaterresultendtimewaittimes      rwait_forzCondition.wait_for2s~Mnn&0GGH""T^^%55q=

IIh[F

rrrs)rZr[r\r9rLrQrArCr+rrrrrrrYrrrrs:9

&**S%.4#rrc8eZdZdZdZdZdZd	dZdefdZ	y)
rcx|j|j|_|jd|_yr)rr_condr_flagr|s  rr9zEvent.__init__Js(]]388:.
]]1%
rc|j5|jjdr$|jj	dddy	dddy#1swYyxYwNFT)rrr=r>r?s ris_setzEvent.is_setNsR
ZZ	zz!!%(

""$						s7A
AA c|j5|jjd|jj|jj	dddy#1swYyxYwNF)rrr=r>rr?s rsetz	Event.setUsP
ZZ	$JJu%JJ JJ!!#	$	$	$sAA&&A/c||j5|jjddddy#1swYyxYwr)rrr=r?s rclearzEvent.clear[s0
ZZ	&JJu%	&	&	&s2;Nch|j5|jjdr|jjn|jj	||jjdr$|jj	dddy	dddy#1swYyxYwr)rrr=r>r)r1rs  rrz
Event.wait_s
ZZ		zz!!%(

""$

(zz!!%(

""$										sBB(B((B1returnc||jrdnd}dt|jdt|dd|dS)Nrunsetrlz at z#x >)rtyper\id)r1
set_statuss  rrrzEvent.__repr__ks="kkmU
4:**+44}Aj\KKrr)
rZr[r\r9rrrrstrrrrYrrrrHs)&$&
L#LrrceZdZd	dZdZdZedZejdZedZ	e	jdZ	y)
BarrierNcddl}ddlm}||jddz}|j	}|j|||||fd|_d|_y)Nrr	)
BufferWrapperr7r)structheaprcalcsizerrQ_stater)	r1partiesactionrr5rrwrapperconds	         rr9zBarrier.__init__tsR' 4q 89}}7FGT7CDrc|\|_|_|_|_|_|jjj
d|_y)Nr7)_parties_action_timeoutr_wrappercreate_memoryviewcast_arrayrOs  rrQzBarrier.__setstate__}s>&+	$dm	
T]mm557<<SArct|j|j|j|j|jfSr)rrrrrr?s rrLzBarrier.__getstate__s,

t||T]]

DMM+	+rc |jdSrrr?s rrzBarrier._state{{1~rc"||jd<yrrrqs  rrzBarrier._stateArc |jdSNr	rr?s rrzBarrier._countrrc"||jd<yrrrqs  rrzBarrier._countrr)NN)
rZr[r\r9rQrLpropertyrsetterrrYrrrrrsjB
+]]]]rr)__all__rr#r]r&rr
rrr
rImportErrorlistr%rrdreobjectrrrrrrrrYrr<module>rs

44"%(^ ((66
N/fN/h
C
C&HyH"B7B2GGG4ii^%LF%LT"i"k
	4
3444sB>>C