ó
éÃ7Rc @ sx d d l Z d d l Z d d l Z d d l Z d e j f d YZ d d Z d Z e d k rt e n d S( iÿÿÿÿNt Runnerc B s) e Z d Z d Z d Z d Z RS( s Running cmd using multi-threadc C s t j j | | | _ d S( N( t threadingt Threadt __init__t queue( t selfR ( ( s; /rhome/cjinfeng/software/ProgramPython/Multithread/multi.pyR s c C s: x3 t r5 | j j } | j | | j j q Wd S( s. run will be called when the object was createdN( t TrueR t gett runnert task_done( R t cmd( ( s; /rhome/cjinfeng/software/ProgramPython/Multithread/multi.pyt run s
c C s t j | d S( s run cmdlineN( t ost system( R R
( ( s; /rhome/cjinfeng/software/ProgramPython/Multithread/multi.pyR s ( t __name__t
__module__t __doc__R R R ( ( ( s; /rhome/cjinfeng/software/ProgramPython/Multithread/multi.pyR s i c C sn t j } x3 t | D]% } t | } t | _ | j q Wx | D] } | j | qI W| j d S( N( t Queuet rangeR R t daemont startt putt join( R
R R t it tt c( ( s; /rhome/cjinfeng/software/ProgramPython/Multithread/multi.pyt worker s
c C s$ d d d d d d d g } d GHd S( Ns python write.py 1s python write.py 2s python write.py 3s python write.py 4s python write.py 5s python write.py 6s python write.py 7s All job done( ( R
( ( s; /rhome/cjinfeng/software/ProgramPython/Multithread/multi.pyt main" s t __main__( R R R t timeR R R R R ( ( ( s; /rhome/cjinfeng/software/ProgramPython/Multithread/multi.pyt