ACC SHELL

Path : /usr/lib/python/multiprocessing/
File Upload :
Current File : //usr/lib/python/multiprocessing/synchronize.pyc

Ñò
tÄMc@sžddddddgZddkZddkZddkZddklZlZddkZdd	k	l
Z
dd
klZl
Z
lZddklZlZyddklZWn+ej
oed
dddƒ‚nXedƒ\ZZeiiZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdS(tLocktRLockt	SemaphoretBoundedSemaphoret	ConditiontEventiÿÿÿÿN(ttimetsleep(tcurrent_process(tFinalizetregister_after_forktdebug(tassert_spawningtPopen(tSemLocks*This platform lacks a functioning sem_opens( implementation, therefore, the requireds+ synchronization primitives needed will nots function, see issue 3770.iRcBs,eZd„Zd„Zd„Zd„ZRS(cCseti|||ƒ}|_td|iƒ|iƒtidjod„}t||ƒndS(Nscreated semlock with handle %stwin32cSs|iiƒdS(N(t_semlockt_after_fork(tobj((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR6s(	t_multiprocessingRRRthandlet
_make_methodstsystplatformR
(tselftkindtvaluetmaxvaluetslR((s1/usr/lib/python2.6/multiprocessing/synchronize.pyt__init__0s
	cCs@|ii|_|ii|_|ii|_|ii|_dS(N(Rtacquiretreleaset	__enter__t__exit__(R((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR:scCs2t|ƒ|i}ti|iƒ|i|ifS(N(RRR
tduplicate_for_childRRR(RR((s1/usr/lib/python2.6/multiprocessing/synchronize.pyt__getstate__@s
	cCs5tii|Œ|_td|dƒ|iƒdS(Ns recreated blocker with handle %ri(RRt_rebuildRRR(Rtstate((s1/usr/lib/python2.6/multiprocessing/synchronize.pyt__setstate__Es(t__name__t
__module__RRR#R&(((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR.s	
		cBs&eZdd„Zd„Zd„ZRS(icCsti|t|tƒdS(N(RRt	SEMAPHOREt
SEM_VALUE_MAX(RR((s1/usr/lib/python2.6/multiprocessing/synchronize.pyRPscCs
|iiƒS(N(Rt
_get_value(R((s1/usr/lib/python2.6/multiprocessing/synchronize.pyt	get_valueSscCs7y|iiƒ}Wntj
o
d}nXd|S(Ntunknowns<Semaphore(value=%s)>(RR+t	Exception(RR((s1/usr/lib/python2.6/multiprocessing/synchronize.pyt__repr__Vs
(R'R(RR,R/(((s1/usr/lib/python2.6/multiprocessing/synchronize.pyRNs	cBseZdd„Zd„ZRS(icCsti|t||ƒdS(N(RRR)(RR((s1/usr/lib/python2.6/multiprocessing/synchronize.pyRcscCsCy|iiƒ}Wntj
o
d}nXd||iifS(NR-s)<BoundedSemaphore(value=%s, maxvalue=%s)>(RR+R.R(RR((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR/fs(R'R(RR/(((s1/usr/lib/python2.6/multiprocessing/synchronize.pyRascBseZd„Zd„ZRS(cCsti|tddƒdS(Ni(RRR)(R((s1/usr/lib/python2.6/multiprocessing/synchronize.pyRtscCs¿y›|iiƒoAtƒi}tiƒidjo|dtiƒi7}qšnG|iiƒdjo
d}n'|iiƒdjo
d}nd}Wntj
o
d}nXd	|S(
Nt
MainThreadt|itNoneitSomeOtherThreadtSomeOtherProcessR-s<Lock(owner=%s)>(	Rt_is_mineRtnamet	threadingtcurrent_threadR+t_countR.(RR6((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR/ws


(R'R(RR/(((s1/usr/lib/python2.6/multiprocessing/synchronize.pyRrs	cBseZd„Zd„ZRS(cCsti|tddƒdS(Ni(RRtRECURSIVE_MUTEX(R((s1/usr/lib/python2.6/multiprocessing/synchronize.pyRscCsìy¼|iiƒoPtƒi}tiƒidjo|dtiƒi7}n|iiƒ}nY|iiƒdjod\}}n3|iiƒdjod\}}n
d
\}}Wntj
od\}}nXd
||fS(NR0R1iR2iR3tnonzeroR4R-s<RLock(%s, %s)>(sNonei(sSomeOtherThreadR;(sSomeOtherProcessR;(sunknownsunknown(	RR5RR6R7R8R9R+R.(RR6tcount((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR/s(R'R(RR/(((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR‹s	cBsVeZdd„Zd„Zd„Zd„Zd„Zdd„Zd„Z	d„Z
RS(	cCsN|ptƒ|_tdƒ|_tdƒ|_tdƒ|_|iƒdS(Ni(Rt_lockRt_sleeping_countt_woken_countt_wait_semaphoreR(Rtlock((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR§s
cCs&t|ƒ|i|i|i|ifS(N(RR=R>R?R@(R((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR#®s
cCs,|\|_|_|_|_|iƒdS(N(R=R>R?R@R(RR%((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR&³scCs@|ii|_|ii|_|ii|_|ii|_dS(N(R=RRR R!(R((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR¸scCsSy&|iiiƒ|iiiƒ}Wntj
o
d}nXd|i|fS(Ntunkowns<Condition(%s, %s)>(R>RR+R?R.R=(Rtnum_waiters((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR/¾scCs°|iiiƒp
td‚|iiƒ|iiiƒ}x!t|ƒD]}|iiƒqIWz|ii	t
|ƒWd|iiƒx!t|ƒD]}|ii	ƒq”WXdS(Ns,must acquire() condition before using wait()(R=RR5tAssertionErrorR>RR9txrangeR@RtTrueR?(RttimeoutR<ti((s1/usr/lib/python2.6/multiprocessing/synchronize.pytwaitÆs



cCs¸|iiiƒp
td‚|iitƒpt‚x8|iitƒo$|iitƒ}|pt‚q;W|iitƒo.|ii	ƒ|iiƒ|iitƒndS(Nslock is not owned(
R=RR5RDR@RtFalseR?R>R(Rtres((s1/usr/lib/python2.6/multiprocessing/synchronize.pytnotifyÝs

cCsù|iiiƒp
td‚|iitƒpt‚x8|iitƒo$|iitƒ}|pt‚q;Wd}x/|iitƒo|ii	ƒ|d7}q|W|oCx!t
|ƒD]}|iiƒq¿Wx|iitƒoqÙWndS(Nslock is not ownedii(R=RR5RDR@RRJR?R>RRE(RRKtsleepersRH((s1/usr/lib/python2.6/multiprocessing/synchronize.pyt
notify_allîs$

N(R'R(R2RR#R&RR/RIRLRN(((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR¥s					cBs8eZd„Zd„Zd„Zd„Zdd„ZRS(cCs%ttƒƒ|_tdƒ|_dS(Ni(RRt_condRt_flag(R((s1/usr/lib/python2.6/multiprocessing/synchronize.pyRscCsO|iiƒz-|iitƒo|iiƒtStSWd|iiƒXdS(N(RORRPRJRRF(R((s1/usr/lib/python2.6/multiprocessing/synchronize.pytis_sets

cCsP|iiƒz.|iitƒ|iiƒ|iiƒWd|iiƒXdS(N(RORRPRJRRN(R((s1/usr/lib/python2.6/multiprocessing/synchronize.pytsets

cCs6|iiƒz|iitƒWd|iiƒXdS(N(RORRPRJR(R((s1/usr/lib/python2.6/multiprocessing/synchronize.pytclear"s
cCsZ|iiƒz8|iitƒo|iiƒn|ii|ƒWd|iiƒXdS(N(RORRPRJRRI(RRG((s1/usr/lib/python2.6/multiprocessing/synchronize.pyRI)s
N(R'R(RRQRRRSR2RI(((s1/usr/lib/python2.6/multiprocessing/synchronize.pyR	s
		
			(t__all__R7tosRRt_timeRt_sleepRtmultiprocessing.processRtmultiprocessing.utilR	R
Rtmultiprocessing.forkingRR
RtImportErrortrangeR:R)R*tobjectRRRRRR(((s1/usr/lib/python2.6/multiprocessing/synchronize.pyt<module>
s. d

ACC SHELL 2018