File "semaphore_tracker.cpython-35.pyc"

Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/opt/alt/python35/lib64/python3.5/multiprocessing/__pycache__/semaphore_tracker.cpython-35.pyc
File size: 3.63 KB
MIME-type: text/x-bytecode.python
Charset: 8 bit



Yf@sddlZddlZddlZddlZddlZddlZddlmZddlmZdddgZ	Gdd	d	e
ZeZej
Z
ejZejZejZd
dZdS)N)spawn)utilensure_runningregister
unregisterc@sXeZdZddZddZddZddZd	d
ZddZd
S)SemaphoreTrackercCstj|_d|_dS)N)	threadingZLock_lock_fd)selfr
F/opt/alt/python35/lib64/python3.5/multiprocessing/semaphore_tracker.py__init__szSemaphoreTracker.__init__cCs|j|jS)N)rr)rr
r
rgetfd!s
zSemaphoreTracker.getfdcCs|j|jdk	rdSg}y|jtjjWntk
rQYnXd}tj\}}zyW|j|t	j
}|gtj}|d||g7}tj
|||Wntj|Yn
X||_Wdtj|XWdQRXdS)zMake sure that semaphore tracker process is running.

        This can be run from any process.  Usually a child process will use
        the semaphore created by its parent.Nz;from multiprocessing.semaphore_tracker import main;main(%d)z-c)r
rappendsysstderrfileno	ExceptionospiperZget_executablerZ_args_from_interpreter_flagsZspawnv_passfdsclose)rZfds_to_passcmdrwZexeargsr
r
rr%s*




zSemaphoreTracker.ensure_runningcCs|jd|dS)z2Register name of semaphore with semaphore tracker.ZREGISTERN)_send)rnamer
r
rrCszSemaphoreTracker.registercCs|jd|dS)z4Unregister name of semaphore with semaphore tracker.Z
UNREGISTERN)r)rrr
r
rrGszSemaphoreTracker.unregistercCst|jdj||jd}t|dkrCtdtj|j|}|t|ksptdS)Nz{0}:{1}
asciiiz
name too long)	rformatencodelen
ValueErrorrwriterAssertionError)rrrmsgnbytesr
r
rrKs
zSemaphoreTracker._sendN)	__name__
__module____qualname__rrrrrrr
r
r
rrsrc-Cstjtjtjtjtjtjx=tjtjfD])}y|jWq?tk
rgYq?Xq?Wt	}zt
|d}x|D]}yg|jjd\}}|dkr|j
|n,|dkr|j|ntd|Wqtk
r4ytjtjWnYnXYqXqWWdQRXWd|rzytjdt|Wntk
ryYnXxu|D]m}zc|jd}ytj|Wn<tk
r}ztjd	||fWYdd}~XnXWdXqWXdS)
zRun semaphore tracker.rb:sREGISTERs
UNREGISTERzunrecognized command %rNzRsemaphore_tracker: There appear to be %d leaked semaphores to clean up at shutdownrzsemaphore_tracker: %r: %s)signalSIGINTSIG_IGNSIGTERMrstdinstdoutrrsetopenstripsplitaddremoveRuntimeError
excepthookexc_infowarningswarnr"decode_multiprocessingZ
sem_unlink)fdfcachelinerrer
r
rmain]sJ
		

	

.rE)rr-rr	r<r?rr__all__objectrZ_semaphore_trackerrrrrrEr
r
r
r<module>s;