ó
è¾bc           @   s®  d  d d d d d d d d d	 d
 d d d d g Z  d d l Z d d l Z d d l Z d d l Z d d l Z d d l m Z m Z d d l	 m
 Z
 d d l m Z m Z m Z m Z d d l m Z d d l m Z d e j f d „  ƒ  YZ d e j f d „  ƒ  YZ e Z e j Z e j ƒ  e ƒ  _ d „  Z d „  Z d e f d „  ƒ  YZ e Z e Z e  d „ Z! d e f d „  ƒ  YZ" d  „  Z# d! „  Z$ d d d# d" „ Z& e Z' d S($   t   Processt   current_processt   active_childrent   freeze_supportt   Lockt   RLockt	   Semaphoret   BoundedSemaphoret	   Conditiont   Eventt   Queuet   Managert   Pipet   Poolt   JoinableQueueiÿÿÿÿN(   t   TimeoutErrort	   cpu_count(   R   (   R   R   R   R   (   R	   (   R
   t   DummyProcessc           B   s8   e  Z d d d d i  d  „ Z d „  Z e d „  ƒ Z RS(   c         C   sP   t  j j |  | | | | | ƒ d  |  _ t j ƒ  |  _ t |  _	 t
 ƒ  |  _ d  S(   N(   t	   threadingt   Threadt   __init__t   Nonet   _pidt   weakreft   WeakKeyDictionaryt	   _childrent   Falset   _start_calledR   t   _parent(   t   selft   groupt   targett   namet   argst   kwargs(    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyR   ?   s
    		c         C   sZ   |  j  t ƒ  k s t ‚ t |  _ t |  j  d ƒ rF d  |  j  j |  <n  t j	 j
 |  ƒ d  S(   NR   (   R   R   t   AssertionErrort   TrueR   t   hasattrR   R   R   R   t   start(   R   (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyR&   F   s
    	c         C   s"   |  j  r |  j ƒ  r d Sd  Sd  S(   Ni    (   R   t   is_aliveR   (   R   (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyt   exitcodeM   s    N(    (   t   __name__t
   __module__R   R   R&   t   propertyR(   (    (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyR   =   s   	c           B   s   e  Z e j j j Z RS(    (   R)   R*   R   t
   _Conditiont
   notify_allt   im_func(    (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyR   X   s   c          C   sL   t  ƒ  j }  x3 t |  ƒ D]% } | j ƒ  s |  j | d  ƒ q q Wt |  ƒ S(   N(   R   R   t   listR'   t   popR   (   t   childrent   p(    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyR   c   s
    c           C   s   d  S(   N(    (    (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyR   j   s    t	   Namespacec           B   s   e  Z d  „  Z d „  Z RS(   c         K   s   |  j  j | ƒ d  S(   N(   t   __dict__t   update(   R   t   kwds(    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyR   r   s    c         C   ss   |  j  j ƒ  } g  } x= | D]5 \ } } | j d ƒ s | j d | | f ƒ q q W| j ƒ  d t j d | ƒ S(   Nt   _s   %s=%rs   Namespace(%s)s   , (   R4   t   itemst
   startswitht   appendt   sortt   strt   join(   R   R8   t   tempR    t   value(    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyt   __repr__t   s    
(   R)   R*   R   R@   (    (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyR3   q   s   	c         C   s   t  j  |  | ƒ S(   N(   t   array(   t   typecodet   sequencet   lock(    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyt   Array€   s    t   Valuec           B   s>   e  Z e d  „ Z d „  Z d „  Z e e e ƒ Z d „  Z RS(   c         C   s   | |  _  | |  _ d  S(   N(   t	   _typecodet   _value(   R   RB   R?   RD   (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyR   „   s    	c         C   s   |  j  S(   N(   RH   (   R   (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyt   _get‡   s    c         C   s   | |  _  d  S(   N(   RH   (   R   R?   (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyt   _set‰   s    c         C   s    d t  |  ƒ j |  j |  j f S(   Ns   <%s(%r, %r)>(   t   typeR)   RG   RH   (   R   (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyR@   Œ   s    (	   R)   R*   R$   R   RI   RJ   R+   R?   R@   (    (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyRF   ƒ   s
   		c           C   s   t  j t S(   N(   t   syst   modulesR)   (    (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyR      s    c           C   s   d  S(   N(    (    (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyt   shutdown’   s    c         C   s    d d l  m } | |  | | ƒ S(   Niÿÿÿÿ(   t
   ThreadPool(   t   multiprocessing.poolRO   (   t	   processest   initializert   initargsRO   (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyR   •   s    (    ((   t   __all__R   RL   R   RA   t	   itertoolst   multiprocessingR   R   t    multiprocessing.dummy.connectionR   R   R   R   R   R	   R
   R   R   R,   R   R    t   current_threadR   R   R   R   R   t   objectR3   t   dictR/   R$   RE   RF   R   RN   R   R   R   (    (    (    s4   /usr/lib/python2.7/multiprocessing/dummy/__init__.pyt   <module>$   s8   "					