%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/lib/python2.7/multiprocessing/
Upload File :
Create Path :
Current File : //usr/local/lib/python2.7/multiprocessing/synchronize.pyo

ó
Pêáac@sœddddddgZddlZddlZddlZddlmZmZddlZdd	l	m
Z
dd
lmZm
Z
mZddlmZmZyddlmZWn)ek
rßed
dddƒ‚nXedƒ\ZZejjZdefd„ƒ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„Zd„Zd„ZRS(cCsctj|||ƒ}|_td|jƒ|jƒtjdkr_d„}t||ƒndS(Nscreated semlock with handle %stwin32cSs|jjƒdS(N(t_semlockt_after_fork(tobj((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyRPs(	t_multiprocessingRRRthandlet
_make_methodstsystplatformR
(tselftkindtvaluetmaxvaluetslR((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyt__init__Js
	cCs"|jj|_|jj|_dS(N(Rtacquiretrelease(R((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyRTscCs
|jjƒS(N(Rt	__enter__(R((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR XscGs|jj|ŒS(N(Rt__exit__(Rtargs((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR![scCs2t|ƒ|j}tj|jƒ|j|jfS(N(RRR
tduplicate_for_childRRR(RR((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyt__getstate__^s
	cCs5tjj|Œ|_td|dƒ|jƒdS(Ns recreated blocker with handle %ri(RRt_rebuildRRR(Rtstate((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyt__setstate__cs(t__name__t
__module__RRR R!R$R'(((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyRHs	
				cBs&eZdd„Zd„Zd„ZRS(icCstj|t|tƒdS(N(RRt	SEMAPHOREt
SEM_VALUE_MAX(RR((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyRnscCs
|jjƒS(N(Rt
_get_value(R((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyt	get_valueqscCs5y|jjƒ}Wntk
r,d}nXd|S(Ntunknowns<Semaphore(value=%s)>(RR,t	Exception(RR((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyt__repr__ts


(R(R)RR-R0(((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyRls	cBseZdd„Zd„ZRS(icCstj|t||ƒdS(N(RRR*(RR((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyRscCsAy|jjƒ}Wntk
r,d}nXd||jjfS(NR.s)<BoundedSemaphore(value=%s, maxvalue=%s)>(RR,R/R(RR((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR0„s

(R(R)RR0(((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyRscBseZd„Zd„ZRS(cCstj|tddƒdS(Ni(RRR*(R((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR’scCsµy“|jjƒrPtƒj}tjƒjdkr’|dtjƒj7}q’nB|jjƒdkrnd}n$|jjƒdkrŒd}nd}Wntk
r¬d}nXd	|S(
Nt
MainThreadt|itNoneitSomeOtherThreadtSomeOtherProcessR.s<Lock(owner=%s)>(	Rt_is_mineRtnamet	threadingtcurrent_threadR,t_countR/(RR7((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR0•s		


(R(R)RR0(((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyRs	cBseZd„Zd„ZRS(cCstj|tddƒdS(Ni(RRtRECURSIVE_MUTEX(R((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR«scCsây´|jjƒr_tƒj}tjƒjdkrM|dtjƒj7}n|jjƒ}nT|jjƒdkrƒd\}}n0|jjƒdkr§d\}}nd
\}}Wntk
rÓd\}}nXd
||fS(NR1R2iR3iR4tnonzeroR5R.s<RLock(%s, %s)>(R3i(R4R<(R5R<(R.R.(	RR6RR7R8R9R:R,R/(RR7tcount((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR0®s
(R(R)RR0(((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR©s	cBsheZd
d„Zd„Zd„Zd„Zd„Zd„Zd„Z	d
d„Z
d„Zd	„ZRS(cCsM|ptƒ|_tdƒ|_tdƒ|_tdƒ|_|jƒdS(Ni(Rt_lockRt_sleeping_countt_woken_countt_wait_semaphoreR(Rtlock((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyRÅs
cCs&t|ƒ|j|j|j|jfS(N(RR>R?R@RA(R((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR$Ìs
cCs,|\|_|_|_|_|jƒdS(N(R>R?R@RAR(RR&((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR'ÑscCs
|jjƒS(N(R>R (R((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR ÖscGs|jj|ŒS(N(R>R!(RR"((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR!ÙscCs"|jj|_|jj|_dS(N(R>RR(R((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyRÜscCsQy&|jjjƒ|jjjƒ}Wntk
r?d}nXd|j|fS(NR.s<Condition(%s, %s)>(R?RR,R@R/R>(Rtnum_waiters((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR0às

cCs“|jjƒ|jjjƒ}x!t|ƒD]}|jjƒq,Wz|jjt|ƒWd|j	jƒx!t|ƒD]}|jjƒqwWXdS(N(
R?RR>RR:txrangeRARtTrueR@(RttimeoutR=ti((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pytwaitès

cCsnx(|jjtƒr*|jjtƒ}qW|jjtƒrj|jjƒ|jjƒ|jjtƒndS(N(R@RtFalseR?RAR(Rtres((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pytnotifyÿs

cCs«x(|jjtƒr*|jjtƒ}qWd}x-|jjtƒr`|jjƒ|d7}q4W|r§x!t|ƒD]}|jjƒqtWx|jjtƒr£qŽWndS(Nii(R@RRIR?RARRD(RRJtsleepersRG((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyt
notify_alls
N(
R(R)R3RR$R'R R!RR0RHRKRM(((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyRÃs							cBs8eZd„Zd„Zd„Zd„Zdd„ZRS(cCs%ttƒƒ|_tdƒ|_dS(Ni(RRt_condRt_flag(R((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR-scCsM|jjƒz+|jjtƒr3|jjƒtStSWd|jjƒXdS(N(RNRRORIRRE(R((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pytis_set1s

cCsP|jjƒz.|jjtƒ|jjƒ|jjƒWd|jjƒXdS(N(RNRRORIRRM(R((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pytset;s

cCs6|jjƒz|jjtƒWd|jjƒXdS(N(RNRRORIR(R((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pytclearDs
cCs|jjƒz]|jjtƒr2|jjƒn|jj|ƒ|jjtƒre|jjƒtStSWd|jjƒXdS(N(RNRRORIRRHRE(RRF((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyRHKs

N(R(R)RRPRQRRR3RH(((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyR+s
		
			(t__all__R8tosRRt_timeRt_sleepRtmultiprocessing.processRtmultiprocessing.utilR	R
Rtmultiprocessing.forkingRR
RtImportErrortrangeR;R*R+tobjectRRRRRR(((s7/usr/local/lib/python2.7/multiprocessing/synchronize.pyt<module>$s.
$h

Zerion Mini Shell 1.0