ACC SHELL

Path : /usr/lib/python/multiprocessing/
File Upload :
Current File : //usr/lib/python/multiprocessing/heap.pyo

Ñò
tÄMc@sddkZddkZddkZddkZddkZddkZddkZddkZddkl	Z	l
Z
ddklZdgZ
eidjo*ddklZdefd	„ƒYZndefd
„ƒYZdefd„ƒYZdefd
„ƒYZdS(iÿÿÿÿN(tFinalizetinfo(tassert_spawningt
BufferWrappertwin32i(RtArenacBs/eZeiƒZd„Zd„Zd„ZRS(cCse||_dtiƒtiiƒf|_tid|id|iƒ|_|i|if|_	dS(Ns	pym-%d-%diÿÿÿÿttagname(
tsizetostgetpidRt_countertnexttnametmmaptbuffert_state(tselfR((s*/usr/lib/python2.6/multiprocessing/heap.pyt__init__#s	"!cCst|ƒ|iS(N(RR(R((s*/usr/lib/python2.6/multiprocessing/heap.pyt__getstate__*s
cCs>|\|_|_|_tid|id|iƒ|_dS(NiÿÿÿÿR(RRRR
R(Rtstate((s*/usr/lib/python2.6/multiprocessing/heap.pyt__setstate__.s!(t__name__t
__module__t	itertoolstcountR
RRR(((s*/usr/lib/python2.6/multiprocessing/heap.pyRs		cBseZd„ZRS(cCs+tid|ƒ|_||_d|_dS(Niÿÿÿÿ(R
RRtNoneR(RR((s*/usr/lib/python2.6/multiprocessing/heap.pyR7s	(RRR(((s*/usr/lib/python2.6/multiprocessing/heap.pyR5stHeapcBsYeZdZeid„Zed„ƒZd„Zd„Z	d„Z
d„Zd„ZRS(icCsdtiƒ|_tiƒ|_||_g|_h|_h|_	h|_
tƒ|_g|_
dS(N(RR	t_lastpidt	threadingtLockt_lockt_sizet_lengthst_len_to_seqt_start_to_blockt_stop_to_blocktsett_allocated_blockst_arenas(RR((s*/usr/lib/python2.6/multiprocessing/heap.pyRDs					cCs|d}|||@S(Ni((tnt	alignmenttmask((s*/usr/lib/python2.6/multiprocessing/heap.pyt_roundupOs
c	Cs
ti|i|ƒ}|t|iƒjog|it|i|ƒtiƒ}|id9_t	d|ƒt
|ƒ}|ii|ƒ|d|fS|i|}|i
|}|iƒ}|p|i
|=|i|=n|\}}}|i||f=|i||f=|S(Nis"allocating a new mmap of length %di(tbisecttbisect_leftR tlenR*tmaxRR
tPAGESIZERRR&tappendR!tpopR"R#(	RRtitlengthtarenatseqtblocktstarttstop((s*/usr/lib/python2.6/multiprocessing/heap.pyt_mallocUs"!


c	
Cs'|\}}}y|i||f}Wntj
onX|i|ƒ\}}y|i||f}Wntj
onX|i|ƒ\}}|||f}||}y|i|i|ƒWn6tj
o*|g|i|<ti|i|ƒnX||i||f<||i||f<dS(N(	R#tKeyErrort_absorbR"R!R0R+tinsortR (	RR6R4R7R8t
prev_blockt_t
next_blockR3((s*/usr/lib/python2.6/multiprocessing/heap.pyt_freeks(
cCs‚|\}}}|i||f=|i||f=||}|i|}|i|ƒ|p|i|=|ii|ƒn||fS(N(R"R#R!tremoveR (RR6R4R7R8R3R5((s*/usr/lib/python2.6/multiprocessing/heap.pyR;‰s



cCsC|iiƒz!|ii|ƒ|i|ƒWd|iiƒXdS(N(RtacquireR%RAR@trelease(RR6((s*/usr/lib/python2.6/multiprocessing/heap.pytfree˜s

cCsÔtiƒ|ijo|iƒn|iiƒzŽ|it|dƒ|iƒ}|i	|ƒ\}}}||}||jo|i
|||fƒn|||f}|ii|ƒ|SWd|ii
ƒXdS(Ni(RR	RRRRBR*R.t
_alignmentR9R@R%taddRC(RRR4R7R8tnew_stopR6((s*/usr/lib/python2.6/multiprocessing/heap.pytmalloc¢s


(
RRRER
R/RtstaticmethodR*R9R@R;RDRH(((s*/usr/lib/python2.6/multiprocessing/heap.pyR@s				
cBs,eZeƒZd„Zd„Zd„ZRS(cCsAtii|ƒ}||f|_t|tiid|fƒdS(Ntargs(Rt_heapRHRRRD(RRR6((s*/usr/lib/python2.6/multiprocessing/heap.pyR¼scCs8|i\\}}}}ti|iƒ\}}||S(N(Rt_multiprocessingtaddress_of_bufferR(RR4R7R8RtaddressR3((s*/usr/lib/python2.6/multiprocessing/heap.pytget_addressÂscCs|idS(Ni(R(R((s*/usr/lib/python2.6/multiprocessing/heap.pytget_sizeÈs(RRRRKRRORP(((s*/usr/lib/python2.6/multiprocessing/heap.pyR¸s			(R+R
ttempfileRtsysRRRLtmultiprocessing.utilRRtmultiprocessing.forkingRt__all__tplatformRtobjectRRR(((s*/usr/lib/python2.6/multiprocessing/heap.pyt<module>	s 	x

ACC SHELL 2018