Your IP : 3.147.78.249


Current Path : /opt/alt/python33/lib64/python3.3/multiprocessing/__pycache__/
Upload File :
Current File : //opt/alt/python33/lib64/python3.3/multiprocessing/__pycache__/util.cpython-33.pyo

�
��f�&c@sddlZddlZddlZddlZddlZddlZddlZddlmZddl	m
Z
mZdddddd	d
ddd
ddddgZdZ
dZdZdZdZdZdZdad*add�Zdd�Zdd�Zdd�Zdd�Zddd	�Zdd
�Zej�Z ej!�Z"dd �Z#d!d�Z$iZ%ej!�Z&Gd"d
�d
e'�Z(dd#d$�Z)d%d�Z*d*a+eee)ee
d&d'�Z,ej-e,�Gd(d�de'�Z.Gd)d�dej/�Z0dS(+iN(u_args_from_interpreter_flags(ucurrent_processuactive_childrenu	sub_debugudebuguinfousub_warningu
get_loggeru
log_to_stderruget_temp_diruregister_after_forku
is_exitinguFinalizeuForkAwareThreadLockuForkAwareLocaluSUBDEBUGu
SUBWARNINGii
iiumultiprocessingu+[%(levelname)s/%(processName)s] %(message)scGs trtjt||�ndS(N(u_loggeruloguSUBDEBUG(umsguargs((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu	sub_debug-scGs trtjt||�ndS(N(u_loggeruloguDEBUG(umsguargs((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyudebug1scGs trtjt||�ndS(N(u_loggeruloguINFO(umsguargs((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyuinfo5scGs trtjt||�ndS(N(u_loggerulogu
SUBWARNING(umsguargs((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyusub_warning9sc
Cs�ddl}|j�z�ts�|jt�adt_|jtd�|jtd�t	t
d�r�t
jt�t
j
t�q�t
jjtfif�t
jjtfif�nWd|j�XtS(u0
    Returns logger used by multiprocessing
    iNuSUBDEBUGu
SUBWARNINGu
unregister(uloggingu_acquireLocku_loggeru	getLoggeruLOGGER_NAMEu	propagateuaddLevelNameuSUBDEBUGu
SUBWARNINGuhasattruatexitu
unregisteru_exit_functionuregisteru
_exithandlersuremoveuappendu_releaseLock(ulogging((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu
get_logger=s
	
 cCsjddl}t�}|jt�}|j�}|j|�|j|�|r`|j|�nda	t
S(uB
    Turn on logging and add a handler which prints to stderr
    iNT(uloggingu
get_loggeru	FormatteruDEFAULT_LOGGING_FORMATu
StreamHandlerusetFormatteru
addHandlerusetLeveluTrueu_log_to_stderru_logger(ulevelulogginguloggeru	formatteruhandler((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu
log_to_stderrZs	

cCs�t�jdkrwddl}ddl}|jdd�}td|�td|jd|gdd�|t�_nt�jS(	Niuprefixupymp-ucreated temp directory %suargsuexitpriorityidi����(	ucurrent_processu_tempdiruNoneushutilutempfileumkdtempuinfouFinalizeurmtree(ushutilutempfileutempdir((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyuget_temp_dirps
cCs�ttj��}|j�x`|D]X\\}}}}y||�Wq#tk
rz}ztd|�WYdd}~Xq#Xq#WdS(Nu after forker raised exception %s(ulistu_afterfork_registryuitemsusortu	Exceptionuinfo(uitemsuindexuidentufuncuobjue((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu_run_after_forkers�s
u_run_after_forkerscCs#|ttt�t|�|f<dS(N(u_afterfork_registryunextu_afterfork_counteruid(uobjufunc((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyuregister_after_fork�scBsn|EeZdZdZfdddd�Zdeeej	dd�Z
dd�Zdd	�Zd
d�Z
dS(
uFinalizeuA
    Class which supports object finalization using weakrefs
    cCsz|dk	r$tj||�|_n||_||_|p?i|_|tt�f|_	t
j�|_|t
|j	<dS(N(uNoneuweakrefurefu_weakrefu	_callbacku_argsu_kwargsunextu_finalizer_counteru_keyuosugetpidu_pidu_finalizer_registry(uselfuobjucallbackuargsukwargsuexitpriority((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu__init__�s		uFinalize.__init__c
Cs�y||j=Wntk
r,|d�Yn�X|j|�krR|d�d}n4|d|j|j|j�|j|j|j�}d|_|_|_|_|_|SdS(uQ
        Run the callback unless it has already been called or cancelled
        ufinalizer no longer registeredu+finalizer ignored because different processu/finalizer calling %s with args %s and kwargs %sN(u_keyuKeyErroru_piduNoneu	_callbacku_argsu_kwargsu_weakref(uselfuwru_finalizer_registryu	sub_debugugetpidures((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu__call__�s

	%uFinalize.__call__cCsLyt|j=Wntk
r"Yn&Xd|_|_|_|_|_dS(u3
        Cancel finalization of the object
        N(u_finalizer_registryu_keyuKeyErroruNoneu_weakrefu	_callbacku_argsu_kwargs(uself((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyucancel�s

uFinalize.cancelcCs
|jtkS(uS
        Return whether this finalizer is still waiting to invoke callback
        (u_keyu_finalizer_registry(uself((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyustill_active�suFinalize.still_activec
Cs�y|j�}Wnttfk
r0d}YnX|dkrAdSdt|jd|j�}|jr�|dt|j�7}n|jr�|dt|j�7}n|j	ddk	r�|dt|j	d�7}n|dS(	Nu<Finalize object, dead>u<Finalize object, callback=%su__name__u, args=u	, kwargs=iu, exitprority=u>(
u_weakrefuAttributeErroru	TypeErroruNoneugetattru	_callbacku_argsustru_kwargsu_key(uselfuobjux((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu__repr__�s		uFinalize.__repr__N(u__name__u
__module__u__qualname__u__doc__uNoneu__init__u_finalizer_registryu	sub_debuguosugetpidu__call__ucancelustill_activeu__repr__(u
__locals__((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyuFinalize�scs�tdkrdS�dkr+dd��n�fdd���fdd�ttj��D�}|jdd
�xW|D]O\}}td|�y|�Wqytk
r�d	dl}|j	�YqyXqyW�dkr�tj
�ndS(u�
    Run all finalizers whose exit priority is not None and at least minpriority

    Finalizers with highest priority are called first; finalizers with
    the same priority will be called in reverse order of creation.
    NcSs|dddk	S(Ni(uNone(up((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu<lambda>�su!_run_finalizers.<locals>.<lambda>cs&|dddk	o%|dd�kS(Ni(uNone(up(uminpriority(u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu<lambda>�scs"g|]}�|�r|�qS(((u.0ux(uf(u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu
<listcomp>�s	u#_run_finalizers.<locals>.<listcomp>ureverseu
calling %siT(u_finalizer_registryuNoneulistuitemsusortuTrueu	sub_debugu	Exceptionu	tracebacku	print_excuclear(uminpriorityuitemsukeyu	finalizeru	traceback((ufuminpriorityu9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu_run_finalizers�s %

u_run_finalizerscCstptdkS(u6
    Returns true if the process is shutting down
    N(u_exitinguNone(((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu
is_exitingscCs�ts�da|d�|d�|d�|�dk	r�x:|�D]/}|jrC|d|j�|jj�qCqCWx.|�D] }|d|j�|j�q�Wn|d�|�ndS(Nuprocess shutting downu2running all "atexit" finalizers with priority >= 0iu!calling terminate() for daemon %sucalling join() for process %su)running the remaining "atexit" finalizersT(u_exitinguTrueuNoneu	_daemonicunameu_popenu	terminateujoin(uinfoudebugu_run_finalizersuactive_childrenucurrent_processup((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu_exit_functions	


	
u_exit_functioncBs,|EeZdZdd�Zdd�ZdS(uForkAwareThreadLockcCs|j�t|tj�dS(N(u_reseturegister_after_forkuForkAwareThreadLock(uself((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu__init__Ds
uForkAwareThreadLock.__init__cCs1tj�|_|jj|_|jj|_dS(N(u	threadinguLocku_lockuacquireurelease(uself((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu_resetHsuForkAwareThreadLock._resetN(u__name__u
__module__u__qualname__u__init__u_reset(u
__locals__((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyuForkAwareThreadLockCscBs,|EeZdZdd�Zdd�ZdS(uForkAwareLocalcCst|dd��dS(NcSs
|jj�S(N(u__dict__uclear(uobj((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu<lambda>Osu)ForkAwareLocal.__init__.<locals>.<lambda>(uregister_after_fork(uself((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu__init__NsuForkAwareLocal.__init__cCst|�ffS(N(utype(uself((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu
__reduce__PsuForkAwareLocal.__reduce__N(u__name__u
__module__u__qualname__u__init__u
__reduce__(u
__locals__((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyuForkAwareLocalMsF(1usysu	functoolsuosu	itertoolsuweakrefuatexitu	threadingu
subprocessu_args_from_interpreter_flagsumultiprocessing.processucurrent_processuactive_childrenu__all__uNOTSETuSUBDEBUGuDEBUGuINFOu
SUBWARNINGuLOGGER_NAMEuDEFAULT_LOGGING_FORMATuNoneu_loggeruFalseu_log_to_stderru	sub_debugudebuguinfousub_warningu
get_loggeru
log_to_stderruget_temp_diruWeakValueDictionaryu_afterfork_registryucountu_afterfork_counteru_run_after_forkersuregister_after_forku_finalizer_registryu_finalizer_counteruobjectuFinalizeu_run_finalizersu
is_exitingu_exitingu_exit_functionuregisteruForkAwareThreadLockulocaluForkAwareLocal(((u9/opt/alt/python33/lib64/python3.3/multiprocessing/util.pyu<module>
sX		R$	(


?>