Your IP : 18.222.162.0


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

�
�mec@s�ddlZddlZddlZddlmZmZddlmZmZdddddd	gZ	iej
d
6ejd6ejd6ej
d
6ejd6ejd6ejd6ejd6ejd6ejd6ejd6ejd6Zd�Zd�Zd�Zd�Zd�Zd�Zdd�Zd�Zd�Z d�Z!d Z"iZ#ej$�Z%d!e&fd"��YZ'd#e'fd$��YZ(d%e'fd&��YZ)d'e)fd(��YZ*dS()i����N(theaptRLock(tassert_spawningtForkingPicklertRawValuetRawArraytValuetArraytcopytsynchronizedtctutbtBthtHtitItltLtftdcCs.tj|�}tj|�}t||d�S(N(tctypestsizeofRt
BufferWrappert
rebuild_ctypetNone(ttype_tsizetwrapper((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyt
_new_value=scGsTtj||�}t|�}tjtj|�dtj|��|j|�|S(s>
    Returns a ctypes object allocated from shared memory
    i(ttypecode_to_typetgetRRtmemsett	addressofRt__init__(ttypecode_or_typetargsRtobj((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyRBs
%
cCs�tj||�}t|ttf�rf||}t|�}tjtj|�dtj	|��|S|t
|�}t|�}|j|�|SdS(s=
    Returns a ctypes array allocated from shared memory
    iN(RR t
isinstancetinttlongRRR!R"RtlenR#(R$tsize_or_initializerRR&tresult((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyRLs
%
cOs�|jdd�}|r1td|j���nt||�}|tkrP|S|tdfkrnt�}nt|d�s�t	d|��nt
||�S(s6
    Return a synchronization wrapper for a Value
    tlocks$unrecognized keyword argument(s): %stacquires'%r' has no method 'acquire'N(tpopRt
ValueErrortkeysRtFalsetTrueRthasattrtAttributeErrorR	(R$R%tkwdsR-R&((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyR\scKs�|jdd�}|r1td|j���nt||�}|tkrP|S|tdfkrnt�}nt|d�s�t	d|��nt
||�S(s9
    Return a synchronization wrapper for a RawArray
    R-s$unrecognized keyword argument(s): %sR.s'%r' has no method 'acquire'N(R/RR0R1RR2R3RR4R5R	(R$R+R6R-R&((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyRlscCs)tt|��}|tj|�d<|S(Ni(RttypeRtpointer(R&tnew_obj((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyR|scCs�t|tj�rt||�St|tj�r]|jtjkrPt||�St||�St	|�}yt
|}Wnqtk
r�g|jD]}|d^q�}t
d�|D��}d|j}t	|tf|�}t
|<nX|||�SdS(Nicss!|]}|t|�fVqdS(N(t
make_property(t.0tname((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pys	<genexpr>�stSynchronized(R'Rt_SimpleCDataR=Rt_type_tc_chartSynchronizedStringtSynchronizedArrayR7tclass_cachetKeyErrort_fields_tdictt__name__tSynchronizedBase(R&R-tclstsclstfieldtnamesRt	classname((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyR	�s



 
!cCsXt|�t|tj�r8t|j|j|jffStt|�|jdffSdS(N(
RR'RRRR?t_wrappert_length_R7R(R&((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pytreduce_ctype�s
cCsK|dk	r||}ntj|t�|j|j��}||_|S(N(RRtregisterRPtfrom_addresstget_addressRN(RRtlengthR&((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyR�s
	cBsPye|SWn=ek
rKi}e|fd|U||e|<||SXdS(Ni(t
prop_cacheRDttemplate(R<R((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyR:�s
s�
def get%s(self):
    self.acquire()
    try:
        return self._obj.%s
    finally:
        self.release()
def set%s(self, value):
    self.acquire()
    try:
        self._obj.%s = value
    finally:
        self.release()
%s = property(get%s, set%s)
RHcBs8eZdd�Zd�Zd�Zd�Zd�ZRS(cCs=||_|pt�|_|jj|_|jj|_dS(N(t_objRt_lockR.trelease(tselfR&R-((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyR#�s	cCs t|�t|j|jffS(N(RR	RWRX(RZ((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyt
__reduce__�s
cCs|jS(N(RW(RZ((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pytget_obj�scCs|jS(N(RX(RZ((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pytget_lock�scCsdt|�j|jfS(Ns<%s wrapper for %s>(R7RGRW(RZ((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyt__repr__�sN(RGt
__module__RR#R[R\R]R^(((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyRH�s
			R=cBseZed�ZRS(tvalue(RGR_R:R`(((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyR=�sRBcBs5eZd�Zd�Zd�Zd�Zd�ZRS(cCs
t|j�S(N(R*RW(RZ((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyt__len__�scCs+|j�z|j|SWd|j�XdS(N(R.RWRY(RZR((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyt__getitem__�s
cCs-|j�z||j|<Wd|j�XdS(N(R.RWRY(RZRR`((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyt__setitem__�s
cCs.|j�z|j||!SWd|j�XdS(N(R.RWRY(RZtstarttstop((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyt__getslice__�s
cCs0|j�z||j||+Wd|j�XdS(N(R.RWRY(RZRdRetvalues((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyt__setslice__s
(RGR_RaRbRcRfRh(((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyRB�s
				RAcBs eZed�Zed�ZRS(R`traw(RGR_R:R`Ri(((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyRAs(+tsysRtweakreftmultiprocessingRRtmultiprocessing.forkingRRt__all__R@tc_wchartc_bytetc_ubytetc_shorttc_ushorttc_inttc_uinttc_longtc_ulongtc_floattc_doubleRRRRRRRRR	RPRR:RVRUtWeakKeyDictionaryRCtobjectRHR=RBRA(((s4/usr/lib64/python2.7/multiprocessing/sharedctypes.pyt<module>#s:		
							"