Your IP : 3.149.214.32


Current Path : /lib64/python3.6/multiprocessing/__pycache__/
Upload File :
Current File : //lib64/python3.6/multiprocessing/__pycache__/managers.cpython-36.opt-2.pyc

3


 \��@s�ddddgZddlZddlZddlZddlZddlZddlmZddlm	Z	dd	l
mZmZdd
lm
Z
ddlmZddlmZdd
lmZdd�Zejeje�dd�d�D�Zedek	r�dd�ZxeD]Zejee�q�WGdd�de�Zfifdd�Zdd�ZGdd�de�Zdd�Zd d!�ZGd"d#�d#e�ZGd$d%�d%e�Z e	j!e	j"fe	j#e	j$fd&�Z%Gd'd�de�Z&Gd(d)�d)e'�Z(Gd*d�de�Z)d+d,�Z*ifd-d.�Z+d�d0d1�Z,Gd2d3�d3e�Z-Gd4d5�d5e�Z.d�d6d7�Z/Gd8d9�d9e)�Z0Gd:d;�d;e)�Z1Gd<d=�d=e1�Z2Gd>d?�d?e)�Z3Gd@dA�dAe)�Z4GdBdC�dCe)�Z5GdDdE�dEe)�Z6e+dFd��Z7GdZd[�d[e7�Z8e+d\d��Z9d]deie9_:e+dfd��Z;e+dgd��Z<dsdsdsdededt�e<_:Gdudg�dge<�Z=Gdvd�de&�Z>e>jdwej?�e>jdxej?�e>jdyej@e3�e>jdzejAe1�e>jd{ejBe1�e>jd|ejCe1�e>jd}ejDe1�e>jd~ejEe2�e>jdejFe4�e>jd�e
jGe=�e>jd�ee8�e>jd�eHe9�e>jd5e.e6�e>jd7e/e;�e>jd3e-e5�e>jdee0d�d��e>jdsd�d��dS)��BaseManager�SyncManager�	BaseProxy�Token�N)�
format_exc�)�
connection)�	reduction�get_spawning_popen)�pool)�process)�util)�get_contextcCstj|j|j�ffS)N)�array�typecode�tobytes)�a�r�0/usr/lib64/python3.6/multiprocessing/managers.py�reduce_array$srcCsg|]}tti|����qSr)�type�getattr)�.0�namerrr�
<listcomp>(sr�items�keys�valuescCstt|�ffS)N)�list)�objrrr�rebuild_as_list*sr c@s0eZdZd
Zdd�Zdd�Zdd	�Zd
d�ZdS)r�typeid�address�idcCs||||_|_|_dS)N)r!r"r#)�selfr!r"r#rrr�__init__9szToken.__init__cCs|j|j|jfS)N)r!r"r#)r$rrr�__getstate__<szToken.__getstate__cCs|\|_|_|_dS)N)r!r"r#)r$�staterrr�__setstate__?szToken.__setstate__cCsd|jj|j|j|jfS)Nz %s(typeid=%r, address=%r, id=%r))�	__class__�__name__r!r"r#)r$rrr�__repr__BszToken.__repr__N)r!r"r#)r*�
__module__�__qualname__�	__slots__r%r&r(r+rrrrr3s
cCs8|j||||f�|j�\}}|dkr*|St||��dS)Nz#RETURN)�send�recv�convert_to_error)�cr#�
methodname�args�kwds�kind�resultrrr�dispatchJs
r8cCs<|dkr|S|dkrt|�S|dkr0td|�Std�SdS)Nz#ERRORz
#TRACEBACKz#UNSERIALIZABLEzUnserializable message: %s
zUnrecognized message type)�RemoteError�
ValueError)r6r7rrrr1Tsr1c@seZdZdd�ZdS)r9cCs&ddddt|jd�ddS)N�
�-�Kr)�strr4)r$rrr�__str__aszRemoteError.__str__N)r*r,r-r?rrrrr9`sr9cCs6g}x,t|�D] }t||�}t|�r|j|�qW|S)N)�dirr�callable�append)r�tempr�funcrrr�all_methodshs
rEcCsdd�t|�D�S)NcSsg|]}|ddkr|�qS)r�_r)rrrrrrwsz"public_methods.<locals>.<listcomp>)rE)rrrr�public_methodsssrGc	@s�eZdZddddddddd	g	Zd
d�Zdd
�Zdd�Zdd�Zdd�Zdd�Z	dd�Z
dd�Ze
ee	d�Zdd�Z
dd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-S).�Server�shutdown�create�accept_connection�get_methods�
debug_info�number_of_objects�dummy�incref�decrefcCs^||_tj|�|_t|\}}||dd�|_|jj|_ddffi|_i|_i|_	t
j�|_dS)N�)r"Zbacklog�0)
�registryr�AuthenticationString�authkey�listener_client�listenerr"�	id_to_obj�id_to_refcount�id_to_local_proxy_obj�	threading�Lock�mutex)r$rTr"rV�
serializer�Listener�Clientrrrr%�s
zServer.__init__cCs�tj�|_|tj�_zZtj|jd�}d|_|j	�y x|jj
�sN|jjd�q6WWntt
fk
rjYnXWdtjtjkr�tjd�tjt_tjt_tjd�XdS)N)�targetTrzresetting stdout, stderrr)r\�Event�
stop_eventr�current_process�_manager_server�Thread�accepter�daemon�start�is_set�wait�KeyboardInterrupt�
SystemExit�sys�stdout�
__stdout__r
�debug�
__stderr__�stderr�exit)r$rhrrr�
serve_forever�s 



zServer.serve_forevercCsPxJy|jj�}Wntk
r&wYnXtj|j|fd�}d|_|j�qWdS)N)rbr4T)rXZaccept�OSErrorr\rg�handle_requestrirj)r$r2�trrrrh�szServer.accepterc'Cs4d}}}y>tj||j�tj||j�|j�}|\}}}}t||�}Wntk
rhdt�f}	Yn>Xy||f|�|�}Wntk
r�dt�f}	Yn
Xd|f}	y|j|	�Wnrtk
�r&}
zTy|jdt�f�Wntk
r�YnXt	j
d|	�t	j
d|�t	j
d|
�WYdd}
~
XnX|j�dS)Nz
#TRACEBACKz#RETURNzFailure to send message: %rz ... request was %rz ... exception was %r)rZdeliver_challengerVZanswer_challenger0r�	Exceptionrr/r
�info�close)r$r2�funcnamer7�request�ignorer4r5rD�msg�errrrx�s2zServer.handle_requestcDCs�tjdtj�j�|j}|j}|j}�x�|jj	��s�yBd}}|�}|\}}}	}
y||\}}}Wn^t
k
r�}
zBy|j|\}}}Wn&t
k
r�}z
|
�WYdd}~XnXWYdd}
~
XnX||kr�td|t
|�|f��t||�}y||	|
�}Wn,tk
�r&}zd|f}WYdd}~XnPX|�o8|j|d�}|�rn|j|||�\}}t||j|�}d||ff}nd|f}Wn�tk
�r�|dk�r�dt�f}nNy,|j|}|||||f|	�|
�}d|f}Wn tk
�r�dt�f}YnXYnPtk
�r"tjdtj�j�tjd�Yn tk
�r@dt�f}YnXyDy||�Wn2tk
�r�}z|d	t�f�WYdd}~XnXWq(tk
�r�}zBtjd
tj�j�tjd|�tjd|�|j�tjd
�WYdd}~Xq(Xq(WdS)Nz$starting server thread to service %rz+method %r of %r object is not in exposed=%rz#ERRORz#PROXYz#RETURNz
#TRACEBACKz$got EOF -- exiting thread serving %rrz#UNSERIALIZABLEzexception in thread serving %rz ... message was %rz ... exception was %rr)r
rrr\�current_threadrr0r/rYrdrk�KeyErrorr[�AttributeErrorrrrz�getrJrr"r�fallback_mapping�EOFErrorrorur{r|)r$�connr0r/rYr3rr~�identr4r5�exposed�	gettypeid�keZ	second_keZfunction�resr�r�r!ZridentZrexposed�tokenZ
fallback_funcr7rrr�serve_client�sx(


$zServer.serve_clientcCs|S)Nr)r$r�r�rrrr�fallback_getvalue&szServer.fallback_getvaluecCst|�S)N)r>)r$r�r�rrrr�fallback_str)szServer.fallback_strcCst|�S)N)�repr)r$r�r�rrrr�
fallback_repr,szServer.fallback_repr)r?r+z	#GETVALUEcCsdS)Nr)r$r2rrrrO5szServer.dummycCs||j�lg}t|jj��}|j�xD|D]<}|dkr(|jd||j|t|j|d�dd�f�q(Wdj|�SQRXdS)NrSz  %s:       refcount=%s
    %srr=r;)	r^rrZr�sortrBr>rY�join)r$r2r7rr�rrrrM8s

$zServer.debug_infocCs
t|j�S)N)�lenrZ)r$r2rrrrNGszServer.number_of_objectscCsLz:ytjd�|jd�Wnddl}|j�YnXWd|jj�XdS)Nz!manager received shutdown message�#RETURNr)r�N)r
rrr/�	traceback�	print_excrd�set)r$r2r�rrrrINs
zServer.shutdowncOs�|j��|j|\}}}}|dkr,|d}	n
|||�}	|dkrFt|	�}|dk	r^t|�t|�}dt|	�}
tjd||
�|	t|�|f|j|
<|
|j	kr�d|j	|
<WdQRX|j
||
�|
t|�fS)Nrz%xz&%r callable returned object with id %r)r^rTrGrr#r
rrr�rYrZrP�tuple)r$r2r!r4r5rAr��method_to_typeid�	proxytyperr�rrrrJ[s 


z
Server.createcCst|j|jd�S)Nr)r�rYr#)r$r2r�rrrrLzszServer.get_methodscCs"|tj�_|jd�|j|�dS)N�#RETURN)r�N)r\r�rr/r�)r$r2rrrrrK�s

zServer.accept_connectioncCs�|j��y|j|d7<Wnhtk
r�}zL||jkrrd|j|<|j||j|<|j|\}}}tjd|�n|�WYdd}~XnXWdQRXdS)Nrz&Server re-enabled tracking & INCREF %r)r^rZr�r[rYr
rr)r$r2r�r�rr�r�rrrrP�s

z
Server.increfcCs�||jkr$||jkr$tjd|�dS|j�.|j|d8<|j|dkrT|j|=WdQRX||jkr�dfdf|j|<tjd|�|j�|j|=WdQRXdS)NzServer DECREF skipping %rrrzdisposing of obj with id %r)rZr[r
rrr^rY)r$r2r�rrrrQ�s


z
Server.decrefN)r*r,r-Zpublicr%rvrhrxr�r�r�r�r�rOrMrNrIrJrLrKrPrQrrrrrH}s,
"Q
rHc@seZdZdgZdZdZdZdS)�State�valuerr�N)r*r,r-r.�INITIAL�STARTED�SHUTDOWNrrrrr��sr�)�pickleZ	xmlrpclibc@s�eZdZiZeZd dd�Zdd�Zdd�Zdffd	d
�Z	e
dffdd��Zd
d�Zd!dd�Z
dd�Zdd�Zdd�Zdd�Zedd��Zedd��Ze
d"dd��ZdS)#rNr�cCs\|dkrtj�j}||_tj|�|_t�|_tj|j_	||_
t|\|_|_
|pTt�|_dS)N)rrerV�_addressrU�_authkeyr��_stater�r��_serializerrWZ	_Listener�_Clientr�_ctx)r$r"rVr_Zctxrrrr%�s

zBaseManager.__init__cCst|j|j|j|j�S)N)rH�	_registryr�r�r�)r$rrr�
get_server�s
zBaseManager.get_servercCs8t|j\}}||j|jd�}t|dd�tj|j_dS)N)rVrO)	rWr�r�r�r8r�r�r�r�)r$r`rar�rrr�connect�szBaseManager.connectc	Cs�|dk	rt|�rtd��tjdd�\}}|jjt|�j|j|j	|j
|j|||fd�|_dj
dd�|jjD��}t|�jd||j_|jj�|j�|j�|_	|j�tj|j_tj|t|�j|j|j	|j
|j|jfd	d
�|_dS)Nzinitializer must be a callableF)Zduplex)rbr4�:css|]}t|�VqdS)N)r>)r�irrr�	<genexpr>�sz$BaseManager.start.<locals>.<genexpr>r<r)r4�exitpriority)rA�	TypeErrorrZPiper�ZProcessr�_run_serverr�r�r�r��_processr�Z	_identityr*rrjr|r0r�r�r�r�r
�Finalize�_finalize_managerr�rI)r$�initializer�initargs�reader�writerr�rrrrj�s&




zBaseManager.startc	CsN|dk	r||�|j||||�}|j|j�|j�tjd|j�|j�dS)Nzmanager serving at %r)�_Serverr/r"r|r
r{rv)	�clsrTr"rVr_r�r�r��serverrrrr�szBaseManager._run_servercOsN|j|j|jd�}zt|dd|f||�\}}Wd|j�Xt||j|�|fS)N)rVrJ)r�r�r�r8r|r)r$r!r4r5r�r#r�rrr�_create%s

zBaseManager._createcCs*|jdk	r&|jj|�|jj�s&d|_dS)N)r�r��is_alive)r$�timeoutrrrr�1s

zBaseManager.joinc
Cs.|j|j|jd�}zt|dd�S|j�XdS)N)rVrM)r�r�r�r8r|)r$r�rrr�_debug_info:szBaseManager._debug_infoc
Cs.|j|j|jd�}zt|dd�S|j�XdS)N)rVrN)r�r�r�r8r|)r$r�rrr�_number_of_objectsDszBaseManager._number_of_objectscCs|jjtjkr|j�|S)N)r�r�r�r�rj)r$rrr�	__enter__NszBaseManager.__enter__cCs|j�dS)N)rI)r$�exc_type�exc_val�exc_tbrrr�__exit__TszBaseManager.__exit__cCs�|j�r�tjd�y,|||d�}zt|dd�Wd|j�XWntk
rRYnX|jdd�|j�r�tjd�t|d�r�tjd�|j�|jd	d�|j�r�tjd
�t	j
|_ytj
|=Wntk
r�YnXdS)Nz#sending shutdown message to manager)rVrIg�?)r�zmanager still alive�	terminatez'trying to `terminate()` manager processg�������?z#manager still alive after terminate)r�r
r{r8r|rzr��hasattrr�r�r�r�r�_address_to_localr�)rr"rVr'r�r�rrrr�Ws.




zBaseManager._finalize_managercCs|jS)N)r�)r$rrr�<lambda>wszBaseManager.<lambda>Tc
s�d|jkr|jj�|_�dkr"t�|p0t�dd�}|p@t�dd�}|r`xt|j��D]\}}qTW|||�f|j�<|r���fdd�}	�|	_t|�|	�dS)Nr��	_exposed_�_method_to_typeid_cs`tjd��|j�f|�|�\}}�||j||j|d�}|j|j|jd�}t|dd|jf�|S)Nz)requesting creation of a shared %r object)�managerrVr�)rVrQ)	r
rrr�r�r�r�r"r8r#)r$r4r5r�Zexp�proxyr�)r�r!rrrC�sz"BaseManager.register.<locals>.temp)	�__dict__r��copy�	AutoProxyrrrr*�setattr)
r�r!rAr�r�r��
create_method�keyr�rCr)r�r!r�registerys

zBaseManager.register)NNr�N)N)NNNNT)r*r,r-r�rHr�r%r�r�rj�classmethodr�r�r�r�r�r�r��staticmethodr��propertyr"r�rrrrr�s(
	$
	

 c@seZdZdd�Zdd�ZdS)�ProcessLocalSetcCstj|dd��dS)NcSs|j�S)N)�clear)rrrrr��sz*ProcessLocalSet.__init__.<locals>.<lambda>)r
�register_after_fork)r$rrrr%�szProcessLocalSet.__init__cCst|�ffS)N)r)r$rrr�
__reduce__�szProcessLocalSet.__reduce__N)r*r,r-r%r�rrrrr��sr�c@s|eZdZiZej�Zddd�Zdd�Zfifdd	�Z	d
d�Z
dd
�Zedd��Z
dd�Zdd�Zdd�Zdd�Zdd�ZdS)rNTFc	
Cs�tj�8tjj|jd�}|dkr:tj�t�f}|tj|j<WdQRX|d|_|d|_	||_
|j
j|_||_
||_t|d|_||_|dk	r�tj|�|_n"|j
dk	r�|j
j|_ntj�j|_|r�|j�tj|tj�dS)Nrr)r�_mutexr�r�r"r
ZForkAwareLocalr��_tls�_idset�_tokenr#�_id�_managerr�rWr��_owned_by_managerrrUr�rerV�_increfr��_after_fork)	r$r�r_r�rVr�rP�
manager_ownedZ	tls_idsetrrrr%�s*



zBaseProxy.__init__cCsdtjd�tj�j}tj�jdkr4|dtj�j7}|j|jj	|j
d�}t|dd|f�||j_
dS)Nzmaking connection to managerZ
MainThread�|)rVrK)r
rrrrerr\r�r�r�r"r�r8r�r)r$rr�rrr�_connect�s

zBaseProxy._connectcCs�y|jj}Wn6tk
rBtjdtj�j�|j�|jj}YnX|j	|j
|||f�|j�\}}|dkrp|S|dkr�|\}}|jj
|jd}	|jj|_|	||j|j|j|d�}
|j|j|jd�}t|dd|jf�|
St||��dS)	Nz#thread %r does not own a connectionz#RETURNz#PROXYr)r�rVr�)rVrQ���)r�rr�r
rrr\r�rr�r/r�r0r�r�r!r�r"r�r�r�r8r#r1)r$r3r4r5r�r6r7r�r�r�r�rrr�_callmethod�s,

zBaseProxy._callmethodcCs
|jd�S)Nz	#GETVALUE)r�)r$rrr�	_getvalueszBaseProxy._getvaluec	Cs�|jrtjd|jj�dS|j|jj|jd�}t|dd|j	f�tjd|jj�|j
j|j	�|joj|jj
}tj|tj|j|j||j|j
|jfdd�|_dS)Nz%owned_by_manager skipped INCREF of %r)rVrPz	INCREF %r�
)r4r�)r�r
rrr�r#r�r"r�r8r�r��addr�r�r�r�_decrefr�Z_close)r$r�r'rrrr�s
zBaseProxy._increfcCs�|j|j�|dks |jtjkr�y2tjd|j�||j|d�}t|dd|jf�Wq�t	k
r�}ztjd|�WYdd}~Xq�Xntjd|j�|r�t
|d�r�tjdtj�j
�|jj�|`dS)Nz	DECREF %r)rVrQz... decref failed %sz%DECREF %r -- manager already shutdownrz-thread %r has no more proxies so closing conn)�discardr#r�r�r�r
rrr"r8rzr�r\r�rrr|)r�rVr'ZtlsZidsetr�r�r�rrrr� s 
zBaseProxy._decrefcCsHd|_y|j�Wn0tk
rB}ztjd|�WYdd}~XnXdS)Nzincref failed: %s)r�r�rzr
r{)r$r�rrrr�9s
zBaseProxy._after_forkcCs^i}t�dk	r|j|d<t|dd�rB|j|d<tt|j|j|ffStt|�|j|j|ffSdS)NrV�_isautoFr�)	r
r�rr��RebuildProxyr�r�r�r)r$r5rrrr�As


zBaseProxy.__reduce__cCs|j�S)N)r�)r$�memorrr�__deepcopy__NszBaseProxy.__deepcopy__cCsdt|�j|jjt|�fS)Nz<%s object, typeid %r at %#x>)rr*r�r!r#)r$rrrr+QszBaseProxy.__repr__cCs4y
|jd�Stk
r.t|�dd�dSXdS)Nr+rz; '__str__()' failed>r�)r�rzr�)r$rrrr?Us
zBaseProxy.__str__)NNNTF)r*r,r-r�r
ZForkAwareThreadLockr�r%r�r�r�r�r�r�r�r�r�r+r?rrrrr�s
(	
cCs�ttj�dd�}|rT|j|jkrTtjd|�d|d<|j|jkrT|j|j|j|j<|j	dd�opttj�dd�}|||fd|i|��S)Nrfz*Rebuild a proxy owned by manager, token=%rTr�rPZ_inheritingF)
rrrer"r
rrr#r[rY�pop)rDr�r_r5r�rPrrrr�bsr�c
Csrt|�}y|||fStk
r(YnXi}x|D]}td||f|�q4Wt|tf|�}||_||||f<|S)NzLdef %s(self, *args, **kwds):
        return self._callmethod(%r, args, kwds))r�r��execrrr�)rr��_cacheZdic�meth�	ProxyTyperrr�
MakeProxyTypews
r�Tc
Cs�t|d}|dkrB||j|d�}zt|dd|f�}Wd|j�X|dkrX|dk	rX|j}|dkrjtj�j}td|j	|�}||||||d�}	d|	_
|	S)Nr)rVrLz
AutoProxy[%s])r�rVrPT)rWr"r8r|r�rrerVr�r!r�)
r�r_r�rVr�rPr�r�r�r�rrrr��s


r�c@seZdZdd�Zdd�ZdS)�	NamespacecKs|jj|�dS)N)r��update)r$r5rrrr%�szNamespace.__init__cCs^t|jj��}g}x,|D]$\}}|jd�s|jd||f�qW|j�d|jjdj|�fS)NrFz%s=%rz%s(%s)z, )	rr�r�
startswithrBr�r)r*r�)r$rrCrr�rrrr+�s
zNamespace.__repr__N)r*r,r-r%r+rrrrr��sr�c@s8eZdZddd�Zdd�Zdd�Zdd	�Zeee�Zd
S)�ValueTcCs||_||_dS)N)�	_typecode�_value)r$rr��lockrrrr%�szValue.__init__cCs|jS)N)r)r$rrrr��sz	Value.getcCs
||_dS)N)r)r$r�rrrr��sz	Value.setcCsdt|�j|j|jfS)Nz
%s(%r, %r))rr*rr)r$rrrr+�szValue.__repr__N)T)	r*r,r-r%r�r�r+r�r�rrrrr��s

r�cCstj||�S)N)r)rZsequencerrrr�Array�src@s8eZdZdZdd�Zdd�Zd	d
�Zdd�Zd
d�ZdS)�
IteratorProxy�__next__r/�throwr|cCs|S)Nr)r$rrr�__iter__�szIteratorProxy.__iter__cGs|jd|�S)Nr)r�)r$r4rrrr�szIteratorProxy.__next__cGs|jd|�S)Nr/)r�)r$r4rrrr/�szIteratorProxy.sendcGs|jd|�S)Nr)r�)r$r4rrrr�szIteratorProxy.throwcGs|jd|�S)Nr|)r�)r$r4rrrr|�szIteratorProxy.closeN)rr/rr|)	r*r,r-r�rrr/rr|rrrrr�src@s2eZdZd
Zddd�Zdd�Zd	d
�Zdd�ZdS)�
AcquirerProxy�acquire�releaseTNcCs"|dkr|fn||f}|jd|�S)Nr	)r�)r$Zblockingr�r4rrrr	�szAcquirerProxy.acquirecCs
|jd�S)Nr
)r�)r$rrrr
�szAcquirerProxy.releasecCs
|jd�S)Nr	)r�)r$rrrr��szAcquirerProxy.__enter__cCs
|jd�S)Nr
)r�)r$r�r�r�rrrr��szAcquirerProxy.__exit__)r	r
)TN)r*r,r-r�r	r
r�r�rrrrr�s

rc@s4eZdZdZddd�Zd	d
�Zdd�Zdd
d�ZdS)�ConditionProxyr	r
rl�notify�
notify_allNcCs|jd|f�S)Nrl)r�)r$r�rrrrl�szConditionProxy.waitcCs
|jd�S)Nr)r�)r$rrrr�szConditionProxy.notifycCs
|jd�S)Nr
)r�)r$rrrr
�szConditionProxy.notify_allcCsh|�}|r|S|dk	r$tj�|}nd}d}x6|sb|dk	rP|tj�}|dkrPP|j|�|�}q.W|S)Nr)�timeZ	monotonicrl)r$Z	predicater�r7ZendtimeZwaittimerrr�wait_for�s

zConditionProxy.wait_for)r	r
rlrr
)N)N)r*r,r-r�rlrr
rrrrrr�s

rc@s2eZdZdZdd�Zdd�Zd	d
�Zddd
�ZdS)�
EventProxyrkr�r�rlcCs
|jd�S)Nrk)r�)r$rrrrkszEventProxy.is_setcCs
|jd�S)Nr�)r�)r$rrrr�szEventProxy.setcCs
|jd�S)Nr�)r�)r$rrrr�szEventProxy.clearNcCs|jd|f�S)Nrl)r�)r$r�rrrrlszEventProxy.wait)rkr�r�rl)N)r*r,r-r�rkr�r�rlrrrrr�s
rc@sNeZdZdZddd�Zdd	�Zd
d�Zedd
��Zedd��Z	edd��Z
dS)�BarrierProxy�__getattribute__rl�abort�resetNcCs|jd|f�S)Nrl)r�)r$r�rrrrl
szBarrierProxy.waitcCs
|jd�S)Nr)r�)r$rrrrszBarrierProxy.abortcCs
|jd�S)Nr)r�)r$rrrrszBarrierProxy.resetcCs|jdd�S)Nr�parties)r)r�)r$rrrrszBarrierProxy.partiescCs|jdd�S)Nr�	n_waiting)r)r�)r$rrrrszBarrierProxy.n_waitingcCs|jdd�S)Nr�broken)r)r�)r$rrrrszBarrierProxy.broken)rrlrr)N)r*r,r-r�rlrrr�rrrrrrrrs
rc@s(eZdZdZdd�Zdd�Zdd	�Zd
S)�NamespaceProxyr�__setattr__�__delattr__cCs0|ddkrtj||�Stj|d�}|d|f�S)NrrFr�r)�objectr)r$r��
callmethodrrr�__getattr__ szNamespaceProxy.__getattr__cCs4|ddkrtj|||�Stj|d�}|d||f�S)NrrFr�r)rrr)r$r�r�rrrrr%szNamespaceProxy.__setattr__cCs0|ddkrtj||�Stj|d�}|d|f�S)NrrFr�r)rrr)r$r�rrrrr*szNamespaceProxy.__delattr__N)rrr)r*r,r-r�rrrrrrrrsrc@s*eZdZdZdd�Zdd�Zeee�ZdS)	�
ValueProxyr�r�cCs
|jd�S)Nr�)r�)r$rrrr�3szValueProxy.getcCs|jd|f�S)Nr�)r�)r$r�rrrr�5szValueProxy.setN)r�r�)r*r,r-r�r�r�r�r�rrrrr1sr�
BaseListProxy�__add__�__contains__�__delitem__�__getitem__�__len__�__mul__�__reversed__�__rmul__�__setitem__rB�count�extend�index�insertr��remove�reverser��__imul__c@seZdZdd�Zdd�ZdS)�	ListProxycCs|jd|f�|S)Nr*)r�)r$r�rrr�__iadd__AszListProxy.__iadd__cCs|jd|f�|S)Nr/)r�)r$r�rrrr/DszListProxy.__imul__N)r*r,r-r1r/rrrrr0@sr0�	DictProxyrr�r�r��has_key�popitem�
setdefaultr��Iterator�
ArrayProxy�	PoolProxy�apply�apply_asyncr|�imap�imap_unorderedr��map�	map_async�starmap�
starmap_asyncr�ZAsyncResult)r:r>r@r;r<c@seZdZdd�Zdd�ZdS)r8cCs|S)Nr)r$rrrr�dszPoolProxy.__enter__cCs|j�dS)N)r�)r$r�r�r�rrrr�fszPoolProxy.__exit__N)r*r,r-r�r�rrrrr8csc@seZdZdS)rN)r*r,r-rrrrrms	�QueueZ
JoinableQueuercr]�RLock�	Semaphore�BoundedSemaphore�	Condition�Barrier�Poolr�dictF)r�r�)r�)rrr)NNNT)T)r r!r"r#r$r%r&r'r(rBr)r*r+r,r�r-r.r�r/)r!r"r#rr$r(r�r�r�r3rrr�r4r5r�r)r$r#r()r9r:r|r;r<r�r=r>r?r@r�)I�__all__ror\rZqueuerr�r�r�contextr	r
rrr
rrr�Z
view_typesrr Z	view_typerrr8r1rzr9rErGrHr�r`raZXmlListenerZ	XmlClientrWrr�r�rr�r�r�r�r�rrrrrrrrrr0r2r�r7Z
BasePoolProxyr8rrArcr]rBrCrDrErFrGrHrrrr�<module>s�


;
]
4