ACC SHELL

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

Ñò
tÄMc
@s5dgZddkZddkZddkZddkZddkZddklZlZl	Z	ddk
lZlZdZ
dZdZeiƒZd„Zefd	„Zdefd
„ƒYZdefd„ƒYZd
efd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdS(tPooliÿÿÿÿN(tProcesst	cpu_counttTimeoutError(tFinalizetdebugiiicCs
t|ŒS(N(tmap(targs((s*/usr/lib/python2.6/multiprocessing/pool.pytmapstar&sc
Cs|i}|i}t|dƒo|iiƒ|iiƒn|dj	o||Œnx¸y
|ƒ}Wn$ttfj
ot	dƒPnX|djot	dƒPn|\}}}	}
}yt
|	|
|Žf}Wn!tj
o}
t|
f}nX||||fƒq^dS(Nt_writers)worker got EOFError or IOError -- exitingsworker got sentinel -- exiting(
tputtgetthasattrR	tcloset_readertNonetEOFErrortIOErrorRtTruet	ExceptiontFalse(tinqueuetoutqueuetinitializertinitargsR
RttasktjobtitfuncRtkwdstresultte((s*/usr/lib/python2.6/multiprocessing/pool.pytworker-s,		





cBsòeZdZeZdddd„Zd„Zdhd„Zdd„Zdd„Z	dd„Z
dhdd„Zddd	„Ze
d
„ƒZe
d„ƒZe
d„ƒZd
„Zd„Zd„Zd„Ze
d„ƒZed„ƒZRS(sH
    Class which supports an async version of the `apply()` builtin
    cCsé|iƒtiƒ|_h|_t|_|djo-y
tƒ}Wqetj
o
d}qeXng|_	xyt
|ƒD]k}|idtd|i
|i||fƒ}|i	i|ƒ|iiddƒ|_t|_|iƒq{Wtidtid|i|i|i|i	fƒ|_t|i_t|i_|iiƒtidtid|i|i|ifƒ|_t|i_t|i_|iiƒt||id|i|i
|i|i	|i|i|ifddƒ|_ dS(NittargetRRt
PoolWorkertexitpriorityi(!t
_setup_queuestQueuet
_taskqueuet_cachetRUNt_stateRRtNotImplementedErrort_pooltrangeRR t_inqueuet	_outqueuetappendtnametreplaceRtdaemontstartt	threadingtThreadRt
_handle_taskst
_quick_putt
_task_handlert_handle_resultst
_quick_gett_result_handlerRt_terminate_poolt
_terminate(tselft	processesRRRtw((s*/usr/lib/python2.6/multiprocessing/pool.pyt__init__SsH
		

	
				$
		
cCsPddkl}|ƒ|_|ƒ|_|iii|_|iii|_	dS(Ni(tSimpleQueue(
tqueuesRBR-R.R	tsendR7RtrecvR:(R>RB((s*/usr/lib/python2.6/multiprocessing/pool.pyR$s
cCs0|itjpt‚|i|||ƒiƒS(s1
        Equivalent of `apply()` builtin
        (R)R(tAssertionErrortapply_asyncR(R>RRR((s*/usr/lib/python2.6/multiprocessing/pool.pytapplyˆscCs0|itjpt‚|i|||ƒiƒS(s/
        Equivalent of `map()` builtin
        (R)R(RFt	map_asyncR(R>Rtiterablet	chunksize((s*/usr/lib/python2.6/multiprocessing/pool.pyRsicsã|itjpt‚|djoFt|iƒ‰|ii‡‡fd†t|ƒDƒˆifƒˆS|djpt‚t	i
ˆ||ƒ}t|iƒ‰|ii‡fd†t|ƒDƒˆifƒd„ˆDƒSdS(sZ
        Equivalent of `itertools.imap()` -- can be MUCH slower than `Pool.map()`
        ic3s4x-|]&\}}ˆi|ˆ|fhfVqWdS(N(t_job(t.0Rtx(RR(s*/usr/lib/python2.6/multiprocessing/pool.pys	<genexpr>s	c3s4x-|]&\}}ˆi|t|fhfVqWdS(N(RLR(RMRRN(R(s*/usr/lib/python2.6/multiprocessing/pool.pys	<genexpr>¤s	css*x#|]}x|D]}|VqWqWdS(N((RMtchunktitem((s*/usr/lib/python2.6/multiprocessing/pool.pys	<genexpr>¦s	N(R)R(RFtIMapIteratorR'R&R
t	enumeratet_set_lengthRt
_get_tasks(R>RRJRKttask_batches((RRs*/usr/lib/python2.6/multiprocessing/pool.pytimap–s
csã|itjpt‚|djoFt|iƒ‰|ii‡‡fd†t|ƒDƒˆifƒˆS|djpt‚t	i
ˆ||ƒ}t|iƒ‰|ii‡fd†t|ƒDƒˆifƒd„ˆDƒSdS(sK
        Like `imap()` method but ordering of results is arbitrary
        ic3s4x-|]&\}}ˆi|ˆ|fhfVqWdS(N(RL(RMRRN(RR(s*/usr/lib/python2.6/multiprocessing/pool.pys	<genexpr>¯s	c3s4x-|]&\}}ˆi|t|fhfVqWdS(N(RLR(RMRRN(R(s*/usr/lib/python2.6/multiprocessing/pool.pys	<genexpr>¶s	css*x#|]}x|D]}|VqWqWdS(N((RMRORP((s*/usr/lib/python2.6/multiprocessing/pool.pys	<genexpr>¸s	N(R)R(RFtIMapUnorderedIteratorR'R&R
RRRSRRT(R>RRJRKRU((RRs*/usr/lib/python2.6/multiprocessing/pool.pytimap_unordered¨s
cCsX|itjpt‚t|i|ƒ}|ii|id|||fgdfƒ|S(s>
        Asynchronous equivalent of `apply()` builtin
        N(	R)R(RFtApplyResultR'R&R
RLR(R>RRRtcallbackR((s*/usr/lib/python2.6/multiprocessing/pool.pyRGºs+csè|itjpt‚t|dƒpt|ƒ}n|djoAtt|ƒt|iƒdƒ\}}|o|d7}q…nt	i
|||ƒ}t|i|t|ƒ|ƒ‰|i
i‡fd†t|ƒDƒdfƒˆS(s<
        Asynchronous equivalent of `map()` builtin
        t__len__iic3s4x-|]&\}}ˆi|t|fhfVqWdS(N(RLR(RMRRN(R(s*/usr/lib/python2.6/multiprocessing/pool.pys	<genexpr>Òs	N(R)R(RFRtlistRtdivmodtlenR+RRTt	MapResultR'R&R
RR(R>RRJRKRZtextraRU((Rs*/usr/lib/python2.6/multiprocessing/pool.pyRIÃs
(c
	Cs9tiƒ}x¼t|idƒD]ž\}}d}xˆt|ƒD]T\}}|iotdƒPny||ƒWq>tj
otdƒPq>Xq>W|otdƒ||dƒqqPqWtdƒy@tdƒ|i	dƒtdƒx|D]}	|dƒqöWWntj
otd	ƒnXtd
ƒdS(Niÿÿÿÿs'task handler found thread._state != RUNscould not put task on queuesdoing set_length()istask handler got sentinels/task handler sending sentinel to result handlers(task handler sending sentinel to workerss/task handler got IOError when sending sentinelsstask handler exiting(
R4tcurrent_threadtiterRRRRR)RRR
(
t	taskqueueR
Rtpooltthreadttaskseqt
set_lengthRRtp((s*/usr/lib/python2.6/multiprocessing/pool.pyR6Ös<









c	Cstiƒ}xÀy
|ƒ}Wn$ttfj
otdƒdSX|io&|itjpt‚tdƒPn|djotdƒPn|\}}}y||i	||ƒWqt
j
oqXqx«|o£|itjo“y
|ƒ}Wn$ttfj
otdƒdSX|djotdƒqÒn|\}}}y||i	||ƒWqÒt
j
oqÒXqÒWt|dƒoatdƒy7x0tdƒD]"}|i
iƒpPn|ƒq§WWqîttfj
oqîXntdt|ƒ|iƒdS(	Ns.result handler got EOFError/IOError -- exitings,result handler found thread._state=TERMINATEsresult handler got sentinels&result handler ignoring extra sentinelRs"ensuring that outqueue is not fulli
s7result handler exiting: len(cache)=%s, thread._state=%s(R4RaRRRR)t	TERMINATERFRt_settKeyErrorRR,RtpollR^(RRtcacheReRRRtobj((s*/usr/lib/python2.6/multiprocessing/pool.pyR9ýs\












	ccsEt|ƒ}x2tti||ƒƒ}|pdS||fVqdS(N(Rbttuplet	itertoolstislice(RtittsizeRN((s*/usr/lib/python2.6/multiprocessing/pool.pyRT7scCstdƒ‚dS(Ns:pool objects cannot be passed between processes or pickled(R*(R>((s*/usr/lib/python2.6/multiprocessing/pool.pyt
__reduce__@scCs;tdƒ|itjot|_|iidƒndS(Nsclosing pool(RR)R(tCLOSER&R
R(R>((s*/usr/lib/python2.6/multiprocessing/pool.pyR
Es
	cCs!tdƒt|_|iƒdS(Nsterminating pool(RRiR)R=(R>((s*/usr/lib/python2.6/multiprocessing/pool.pyt	terminateKs
	cCsctdƒ|ittfjpt‚|iiƒ|iiƒx|iD]}|iƒqKWdS(Nsjoining pool(	RR)RuRiRFR8tjoinR;R+(R>Rh((s*/usr/lib/python2.6/multiprocessing/pool.pyRwPs



cCsZtdƒ|iiƒx<|iƒo.|iiƒo|iiƒtidƒqWdS(Ns7removing tasks from inqueue until task handler finishedi(	Rt_rlocktacquiretis_aliveRRlREttimetsleep(Rttask_handlerRs((s*/usr/lib/python2.6/multiprocessing/pool.pyt_help_stuff_finishXs


c	Cs:tdƒt|_|idƒtdƒ|i||t|ƒƒ|iƒpt|ƒdjpt‚t|_|idƒ|o=t	|ddƒo)tdƒx|D]}|i
ƒq¬Wntdƒ|idƒtdƒ|idƒ|o=t	|ddƒo)td	ƒx|D]}|iƒqWndS(
Nsfinalizing pools&helping task handler/workers to finishiRvsterminating workerssjoining task handlerg}Ô%­I²Tsjoining result handlersjoining pool workers(RRiR)R
RR~R^RzRFRRvRw(	tclsRcRRRdR}tresult_handlerRmRh((s*/usr/lib/python2.6/multiprocessing/pool.pyR<as,
	

'	






N((((t__name__t
__module__t__doc__RRRAR$RHRRVRXRGRItstaticmethodR6R9RTRtR
RvRwR~tclassmethodR<(((s*/usr/lib/python2.6/multiprocessing/pool.pyRMs&.		':						RYcBsDeZd„Zd„Zd„Zdd„Zdd„Zd„ZRS(cCsStitiƒƒ|_tiƒ|_||_t|_	||_
|||i<dS(N(R4t	ConditiontLockt_condtjob_countertnextRLR'Rt_readyt	_callback(R>RmRZ((s*/usr/lib/python2.6/multiprocessing/pool.pyRAˆs			cCs|iS(N(R‹(R>((s*/usr/lib/python2.6/multiprocessing/pool.pytreadyscCs|ipt‚|iS(N(R‹RFt_success(R>((s*/usr/lib/python2.6/multiprocessing/pool.pyt
successful“scCsD|iiƒz"|ip|ii|ƒnWd|iiƒXdS(N(RˆRyR‹twaittrelease(R>ttimeout((s*/usr/lib/python2.6/multiprocessing/pool.pyR—s


cCs@|i|ƒ|ip
t‚n|io|iS|i‚dS(N(RR‹RRŽt_value(R>R’((s*/usr/lib/python2.6/multiprocessing/pool.pyRŸs



cCsƒ|\|_|_|io|io|i|iƒn|iiƒzt|_|iiƒWd|iiƒX|i	|i
=dS(N(RŽR“RŒRˆRyRR‹tnotifyR‘R'RL(R>RRn((s*/usr/lib/python2.6/multiprocessing/pool.pyRj¨s
	N(	RR‚RARRRRRRj(((s*/usr/lib/python2.6/multiprocessing/pool.pyRY†s				R_cBseZd„Zd„ZRS(cCswti|||ƒt|_dg||_||_|djod|_t|_n||t	||ƒ|_dS(Ni(
RYRARRŽRR“t
_chunksizet_number_leftR‹tbool(R>RmRKtlengthRZ((s*/usr/lib/python2.6/multiprocessing/pool.pyRAºs		
	
cCs|\}}|o¬||i||i|d|i+|id8_|idjog|io|i|iƒn|i|i=|iiƒzt|_	|ii
ƒWd|iiƒXqnXt|_
||_|i|i=|iiƒzt|_	|ii
ƒWd|iiƒXdS(Nii(R“R•R–RŒR'RLRˆRyRR‹R”R‘RRŽ(R>Rtsuccess_resulttsuccessR((s*/usr/lib/python2.6/multiprocessing/pool.pyRjÅs*"


			

	(RR‚RARj(((s*/usr/lib/python2.6/multiprocessing/pool.pyR_¸s	RQcBs>eZd„Zd„Zdd„ZeZd„Zd„ZRS(cCsktitiƒƒ|_tiƒ|_||_ti	ƒ|_
d|_d|_
h|_|||i<dS(Ni(R4R†R‡RˆR‰RŠRLR'tcollectionstdequet_itemst_indexRt_lengtht	_unsorted(R>Rm((s*/usr/lib/python2.6/multiprocessing/pool.pyRAæs				cCs|S(N((R>((s*/usr/lib/python2.6/multiprocessing/pool.pyt__iter__ðscCsæ|iiƒz¦y|iiƒ}WnŒtj
o€|i|ijo
t‚n|ii|ƒy|iiƒ}Wq²tj
o*|i|ijo
t‚nt	‚q²XnXWd|ii
ƒX|\}}|o|S|‚dS(N(RˆRyRtpopleftt
IndexErrorRžRŸt
StopIterationRRR‘(R>R’RPRštvalue((s*/usr/lib/python2.6/multiprocessing/pool.pyRŠós&


cCsæ|iiƒzÄ|i|jo|ii|ƒ|id7_xL|i|ijo8|ii|iƒ}|ii|ƒ|id7_qBW|iiƒn||i|<|i|ijo|i	|i
=nWd|iiƒXdS(Ni(RˆRyRžRR/R tpopR”RŸR'RLR‘(R>RRn((s*/usr/lib/python2.6/multiprocessing/pool.pyRjs

cCs`|iiƒz>||_|i|ijo|iiƒ|i|i=nWd|iiƒXdS(N(RˆRyRŸRžR”R'RLR‘(R>R˜((s*/usr/lib/python2.6/multiprocessing/pool.pyRSs
	
N(	RR‚RAR¡RRŠt__next__RjRS(((s*/usr/lib/python2.6/multiprocessing/pool.pyRQäs	
		RWcBseZd„ZRS(cCsv|iiƒzT|ii|ƒ|id7_|iiƒ|i|ijo|i|i=nWd|ii	ƒXdS(Ni(
RˆRyRR/RžR”RŸR'RLR‘(R>RRn((s*/usr/lib/python2.6/multiprocessing/pool.pyRj/s

(RR‚Rj(((s*/usr/lib/python2.6/multiprocessing/pool.pyRW-st
ThreadPoolcBsBeZddklZdddd„Zd„Zed„ƒZRS(i(RcCsti||||ƒdS(N(RRA(R>R?RR((s*/usr/lib/python2.6/multiprocessing/pool.pyRABscCs@tiƒ|_tiƒ|_|ii|_|ii|_dS(N(R%R-R.R
R7RR:(R>((s*/usr/lib/python2.6/multiprocessing/pool.pyR$EscCsW|iiƒz5|iiƒ|iidg|ƒ|iiƒWd|iiƒXdS(N(t	not_emptyRytqueuetcleartextendRt
notify_allR‘(RR}Rs((s*/usr/lib/python2.6/multiprocessing/pool.pyR~Ks

N((	RR‚tdummyRRRAR$R„R~(((s*/usr/lib/python2.6/multiprocessing/pool.pyR¨>s	(t__all__R4R%RpR›R{tmultiprocessingRRRtmultiprocessing.utilRRR(RuRitcountR‰RRR tobjectRRYR_RQRWR¨(((s*/usr/lib/python2.6/multiprocessing/pool.pyt<module>	s(		 ÿ:2,I

ACC SHELL 2018