Ńň
$8Zc           @   s  d  Z  d d d d d d d d d	 d
 d d d d d d d d d d d d d d d d d g Z d Z d d k Z d d k Z d d k l Z l Z l Z d d  k	 l
 Z
 l Z d! e f d"     YZ d e f d#     YZ d e f d$     YZ d% e f d&     YZ d d k Z d'   Z e d(  Z d)   Z d*   Z d+   Z d d,  Z d-   Z d.   Z d/   Z d d0  Z d1 d2  Z d1 d3  Z d4   Z  d5 d6  Z! d5 d7  Z" d d d@ d8  Z# d9   Z$ d:   Z% d;   Z& d<   Z' e i( d= j o d>   Z) e d? g 7Z n d S(A   s   0.70a1t   Processt   current_processt   active_childrent   freeze_supportt   Managert   Pipet	   cpu_countt   log_to_stderrt
   get_loggert   allow_connection_picklingt   BufferTooShortt   TimeoutErrort   Lockt   RLockt	   Semaphoret   BoundedSemaphoret	   Conditiont   Eventt   Queuet   JoinableQueuet   Poolt   Valuet   Arrayt   RawValuet   RawArrayt   SUBDEBUGt
   SUBWARNINGs"   R. Oudkerk (r.m.oudkerk@gmail.com)i˙˙˙˙N(   R    R   R   (   R   R   t   ProcessErrorc           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   F   s   c           B   s   e  Z RS(    (   R   R   (    (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR
   I   s   c           B   s   e  Z RS(    (   R   R   (    (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   L   s   t   AuthenticationErrorc           B   s   e  Z RS(    (   R   R   (    (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   O   s   c          C   s'   d d k  l }  |    } | i   | S(   sś   
    Returns a manager associated with a running server process

    The managers methods such as `Lock()`, `Condition()` and `Queue()`
    can be used to create shared objects.
    i˙˙˙˙(   t   SyncManager(   t   multiprocessing.managersR   t   start(   R   t   m(    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   Y   s    	
c         C   s   d d k  l } | |   S(   s;   
    Returns two connection object connected by a pipe
    i˙˙˙˙(   R   (   t   multiprocessing.connectionR   (   t   duplexR   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   e   s    c          C   s  t  i d j o= y t t i d  }  Wqä t t f j
 o d }  qä Xn d t  i j p t  i d j o? y t t i d  i    }  Wqä t j
 o d }  qä Xn9 y t i	 d  }  Wn" t t
 t f j
 o d }  n X|  d j o |  St d	   d
 S(   s2   
    Returns the number of CPUs in the system
    t   win32t   NUMBER_OF_PROCESSORSi    t   bsdt   darwins   sysctl -n hw.ncput   SC_NPROCESSORS_ONLNi   s   cannot determine number of cpusN(   t   syst   platformt   intt   ost   environt
   ValueErrort   KeyErrort   popent   readt   sysconft   OSErrort   AttributeErrort   NotImplementedError(   t   num(    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   l   s"     c          C   sB   t  i d j o. t t  d t  o d d k l }  |    n d S(   s   
    Check whether this is a fake forked process in a frozen executable.
    If so then run code specified by commandline and exit.
    R%   t   frozeni˙˙˙˙(   R   N(   R*   R+   t   getattrt   Falset   multiprocessing.forkingR   (   R   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR      s    #c          C   s   d d k  l }  |    S(   sR   
    Return package logger -- if it does not already exist then it is created
    i˙˙˙˙(   R   (   t   multiprocessing.utilR   (   R   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR      s    c         C   s   d d k  l } | |   S(   sB   
    Turn on logging and add a handler which prints to stderr
    i˙˙˙˙(   R   (   R<   R   (   t   levelR   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR      s    c          C   s   d d k  l }  d S(   sO   
    Install support for sending connections and sockets between processes
    i˙˙˙˙(   t	   reductionN(   t   multiprocessingR>   (   R>   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR	      s    c          C   s   d d k  l }  |    S(   s-   
    Returns a non-recursive lock object
    i˙˙˙˙(   R   (   t   multiprocessing.synchronizeR   (   R   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   Ś   s    c          C   s   d d k  l }  |    S(   s)   
    Returns a recursive lock object
    i˙˙˙˙(   R   (   R@   R   (   R   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   ­   s    c         C   s   d d k  l } | |   S(   s$   
    Returns a condition object
    i˙˙˙˙(   R   (   R@   R   (   t   lockR   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   ´   s    i   c         C   s   d d k  l } | |   S(   s$   
    Returns a semaphore object
    i˙˙˙˙(   R   (   R@   R   (   t   valueR   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   ť   s    c         C   s   d d k  l } | |   S(   s,   
    Returns a bounded semaphore object
    i˙˙˙˙(   R   (   R@   R   (   RB   R   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   Â   s    c          C   s   d d k  l }  |    S(   s!   
    Returns an event object
    i˙˙˙˙(   R   (   R@   R   (   R   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   É   s    i    c         C   s   d d k  l } | |   S(   s    
    Returns a queue object
    i˙˙˙˙(   R   (   t   multiprocessing.queuesR   (   t   maxsizeR   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   Đ   s    c         C   s   d d k  l } | |   S(   s    
    Returns a queue object
    i˙˙˙˙(   R   (   RC   R   (   RD   R   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   ×   s    c         C   s    d d k  l } | |  | |  S(   s'   
    Returns a process pool object
    i˙˙˙˙(   R   (   t   multiprocessing.poolR   (   t	   processest   initializert   initargsR   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   Ţ   s    c         G   s   d d k  l } | |  |  S(   s!   
    Returns a shared object
    i˙˙˙˙(   R   (   t   multiprocessing.sharedctypesR   (   t   typecode_or_typet   argsR   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   ĺ   s    c         C   s   d d k  l } | |  |  S(   s    
    Returns a shared array
    i˙˙˙˙(   R   (   RI   R   (   RJ   t   size_or_initializerR   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   ě   s    c         O   s    d d k  l } | |  | |  S(   s.   
    Returns a synchronized shared object
    i˙˙˙˙(   R   (   RI   R   (   RJ   RK   t   kwdsR   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   ó   s    c         K   s    d d k  l } | |  | |  S(   s-   
    Returns a synchronized shared array
    i˙˙˙˙(   R   (   RI   R   (   RJ   RL   RM   R   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyR   ú   s    R%   c         C   s   d d k  l } | |   d S(   sť   
        Sets the path to a python.exe or pythonw.exe binary used to run
        child processes on Windows instead of sys.executable.
        Useful for people embedding Python.
        i˙˙˙˙(   t   set_executableN(   R;   RN   (   t
   executableRN   (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyRN     s    RN   (    (*   t   __version__t   __all__t
   __author__R-   R*   t   multiprocessing.processR    R   R   R<   R   R   t	   ExceptionR   R
   R   R   t   _multiprocessingR   t   TrueR   R   R   R   t   NoneR   R	   R   R   R   R   R   R   R   R   R   R   R   R   R   R+   RN   (    (    (    s.   /usr/lib/python2.6/multiprocessing/__init__.pyt   <module>+   sN   							
									