MINI MINI MANI MO

Path : /lib64/python2.7/multiprocessing/
File Upload :
Current File : //lib64/python2.7/multiprocessing/queues.pyo

ó
Fì]c@s8dddgZddlZddlZddlZddlZddlZddlZddlZddlm	Z	m
Z
ddlZddlm
Z
ddlmZmZmZmZddlmZmZmZmZdd	lmZdefd
„ƒYZeƒZdefd„ƒYZdefd„ƒYZdS(
tQueuetSimpleQueuet
JoinableQueueiÿÿÿÿN(tEmptytFull(tPipe(tLocktBoundedSemaphoret	Semaphoret	Condition(tdebugtinfotFinalizetregister_after_fork(tassert_spawningcBsËeZdd„Zd„Zd„Zd„Zedd„Zedd„Z	d„Z
d„Zd	„Zd
„Z
d„Zd„Zd
„Zd„Zd„Zed„ƒZed„ƒZed„ƒZRS(icCsÀ|dkrtjj}n||_tdtƒ\|_|_tƒ|_	t
jƒ|_t
jdkrud|_ntƒ|_t|ƒ|_|jƒt
jdkr¼t|tjƒndS(Nitduplextwin32(t_multiprocessingtSemLockt
SEM_VALUE_MAXt_maxsizeRtFalset_readert_writerRt_rlocktostgetpidt_opidtsystplatformtNonet_wlockRt_semt_after_forkR
R(tselftmaxsize((s./usr/lib64/python2.7/multiprocessing/queues.pyt__init__:s	
cCs8t|ƒ|j|j|j|j|j|j|jfS(N(RRRRRRR R(R"((s./usr/lib64/python2.7/multiprocessing/queues.pyt__getstate__Ls
cCs>|\|_|_|_|_|_|_|_|jƒdS(N(RRRRRR RR!(R"tstate((s./usr/lib64/python2.7/multiprocessing/queues.pyt__setstate__Qs0cCstdƒtjtjƒƒ|_tjƒ|_d|_	d|_
t|_t|_
d|_|jj|_|jj|_|jj|_dS(NsQueue._after_fork()(R
t	threadingR	Rt	_notemptytcollectionstdequet_bufferRt_threadt_jointhreadRt_joincancelledt_closedt_closeRtsendt_sendRtrecvt_recvtpollt_poll(R"((s./usr/lib64/python2.7/multiprocessing/queues.pyR!Vs
					cCs}|jj||ƒst‚n|jjƒz=|jdkrJ|jƒn|jj|ƒ|jj	ƒWd|jj
ƒXdS(N(R tacquireRR)R-Rt
_start_threadR,tappendtnotifytrelease(R"tobjtblockttimeout((s./usr/lib64/python2.7/multiprocessing/queues.pytputcs	

cCs|rT|dkrT|jjƒz!|jƒ}|jjƒ|SWd|jjƒXn¼|rmtjƒ|}n|jj||ƒs‹t‚nzt|rÌ|tjƒ}|dksÀ|j|ƒrát‚qán|jƒsát‚n|jƒ}|jjƒ|SWd|jjƒXdS(Ni(	RRR8R5R R<ttimeRR7(R"R>R?trestdeadline((s./usr/lib64/python2.7/multiprocessing/queues.pytgetqs,

		
cCs|j|jjjƒS(N(RR t_semlockt
_get_value(R"((s./usr/lib64/python2.7/multiprocessing/queues.pytqsizescCs|jƒS(N(R7(R"((s./usr/lib64/python2.7/multiprocessing/queues.pytempty‘scCs|jjjƒS(N(R REt_is_zero(R"((s./usr/lib64/python2.7/multiprocessing/queues.pytfull”scCs
|jtƒS(N(RDR(R"((s./usr/lib64/python2.7/multiprocessing/queues.pyt
get_nowait—scCs|j|tƒS(N(R@R(R"R=((s./usr/lib64/python2.7/multiprocessing/queues.pyt
put_nowaitšscCs0t|_|jjƒ|jr,|jƒndS(N(tTrueR0RtcloseR1(R"((s./usr/lib64/python2.7/multiprocessing/queues.pyRNs	
	cCs$tdƒ|jr |jƒndS(NsQueue.join_thread()(R
R.(R"((s./usr/lib64/python2.7/multiprocessing/queues.pytjoin_thread£s
	cCs<tdƒt|_y|jjƒWntk
r7nXdS(NsQueue.cancel_join_thread()(R
RMR/R.tcanceltAttributeError(R"((s./usr/lib64/python2.7/multiprocessing/queues.pytcancel_join_thread©s
	
c	Csótdƒ|jjƒtjdtjd|j|j|j|j	|j
jfddƒ|_t
|j_tdƒ|jjƒtdƒ|jsÅt|jtjtj|jƒgdd	ƒ|_nt|tj|j|jgdd
ƒ|_dS(NsQueue._start_thread()ttargettargstnametQueueFeederThreadsdoing self._thread.start()s... done self._thread.start()texitpriorityiûÿÿÿi
(R
R,tclearR(tThreadRt_feedR)R3RRRNR-RMtdaemontstartR/Rt_finalize_jointweakreftrefR.t_finalize_closeR1(R"((s./usr/lib64/python2.7/multiprocessing/queues.pyR9±s(

		


		cCsDtdƒ|ƒ}|dk	r6|jƒtdƒn
tdƒdS(Nsjoining queue threads... queue thread joineds... queue thread already dead(R
Rtjoin(ttwrtthread((s./usr/lib64/python2.7/multiprocessing/queues.pyR]Ñs
	

cCsAtdƒ|jƒz|jtƒ|jƒWd|jƒXdS(Nstelling queue thread to quit(R
R8R:t	_sentinelR;R<(tbuffertnotempty((s./usr/lib64/python2.7/multiprocessing/queues.pyR`Ûs


cCs€tdƒddlm}|j}|j}|j}|j}	t}
tj	dkrh|j}|j}nd}y±xª|ƒz|sŽ|ƒnWd|ƒXymxf|	ƒ}
|
|
krÊtdƒ|ƒdS|dkrã||
ƒq |ƒz||
ƒWd|ƒXq Wqttk
rqtXqtWnZtk
r{}y3|ƒrMt
d|ƒnddl}|jƒWq|tk
rwq|XnXdS(Ns$starting thread to feed data to pipei(t
is_exitingRs%feeder thread got sentinel -- exitingserror in queue thread: %siÿÿÿÿ(R
tutilRgR8R<twaittpopleftRdRRRt
IndexErrort	ExceptionRt	tracebackt	print_exc(ReRfR2t	writelockRNRgtnacquiretnreleasetnwaittbpoplefttsentineltwacquiretwreleaseR=teRm((s./usr/lib64/python2.7/multiprocessing/queues.pyRZåsR
						


	
N(t__name__t
__module__R$R%R'R!RMRR@RDRGRHRJRKRLRNRORRR9tstaticmethodR]R`RZ(((s./usr/lib64/python2.7/multiprocessing/queues.pyR8s$			
									 

cBsGeZdd„Zd„Zd„Zedd„Zd„Zd„Z	RS(icCs/tj||ƒtdƒ|_tƒ|_dS(Ni(RR$Rt_unfinished_tasksR	t_cond(R"R#((s./usr/lib64/python2.7/multiprocessing/queues.pyR$)scCstj|ƒ|j|jfS(N(RR%R|R{(R"((s./usr/lib64/python2.7/multiprocessing/queues.pyR%.scCs.tj||d ƒ|d\|_|_dS(Niþÿÿÿ(RR'R|R{(R"R&((s./usr/lib64/python2.7/multiprocessing/queues.pyR'1scCs¤|jj||ƒst‚n|jjƒ|jjƒzJ|jdkrW|jƒn|jj	|ƒ|j
jƒ|jjƒWd|jjƒ|jjƒXdS(N(
R R8RR)R|R-RR9R,R:R{R<R;(R"R=R>R?((s./usr/lib64/python2.7/multiprocessing/queues.pyR@5s	




cCsi|jjƒzG|jjtƒs1tdƒ‚n|jjjƒrS|jjƒnWd|jjƒXdS(Ns!task_done() called too many times(	R|R8R{Rt
ValueErrorRERIt
notify_allR<(R"((s./usr/lib64/python2.7/multiprocessing/queues.pyt	task_doneFs
cCsH|jjƒz&|jjjƒs2|jjƒnWd|jjƒXdS(N(R|R8R{RERIRiR<(R"((s./usr/lib64/python2.7/multiprocessing/queues.pyRaPs

N(
RxRyR$R%R'RMRR@RRa(((s./usr/lib64/python2.7/multiprocessing/queues.pyR's			
cBs5eZd„Zd„Zd„Zd„Zd„ZRS(cCs\tdtƒ\|_|_tƒ|_tjdkrBd|_	ntƒ|_	|j
ƒdS(NRR(RRRRRRRRRRt
_make_methods(R"((s./usr/lib64/python2.7/multiprocessing/queues.pyR$^scCs|jjƒS(N(RR6(R"((s./usr/lib64/python2.7/multiprocessing/queues.pyRHgscCs&t|ƒ|j|j|j|jfS(N(RRRRR(R"((s./usr/lib64/python2.7/multiprocessing/queues.pyR%js
cCs,|\|_|_|_|_|jƒdS(N(RRRRR€(R"R&((s./usr/lib64/python2.7/multiprocessing/queues.pyR'nscs«|jj‰|jj|jj‰‰‡‡‡fd†}||_|jdkrd|jj	|_
nC|jj	‰|jj|jj‰‰‡‡‡fd†}||_
dS(Ncs!ˆƒzˆƒSWdˆƒXdS(N(((tracquireR4trrelease(s./usr/lib64/python2.7/multiprocessing/queues.pyRDuscs$ˆƒzˆ|ƒSWdˆƒXdS(N((R=(R2RuRv(s./usr/lib64/python2.7/multiprocessing/queues.pyR@ƒs(RR4RR8R<RDRRRR2R@(R"RDR@((RR4R‚R2RuRvs./usr/lib64/python2.7/multiprocessing/queues.pyR€rs	(RxRyR$RHR%R'R€(((s./usr/lib64/python2.7/multiprocessing/queues.pyR\s
					(t__all__RRR(R*RAtatexitR^RRRRtmultiprocessingRtmultiprocessing.synchronizeRRRR	tmultiprocessing.utilR
RRR
tmultiprocessing.forkingRtobjectRdRR(((s./usr/lib64/python2.7/multiprocessing/queues.pyt<module>#s"""å	
5

OHA YOOOO