File "semaphore_tracker.cpython-37.pyc"

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

B

 f[@sddlZddlZddlZddlZddlZddlZddlmZddlmZdddgZ	Gdd	d	e
ZeZej
Z
ejZejZejZd
dZdS)N)spawn)utilensure_runningregister
unregisterc@s<eZdZddZddZddZddZd	d
ZddZd
S)SemaphoreTrackercCst|_d|_d|_dS)N)	threadingZLock_lock_fd_pid)selfrF/opt/alt/python37/lib64/python3.7/multiprocessing/semaphore_tracker.py__init__s
zSemaphoreTracker.__init__cCs||jS)N)rr)r
rrrgetfd"szSemaphoreTracker.getfdc	
Cs|j|jdk	rRt|jtj\}}|s0dSt|jd|_d|_tdg}y|	t
jWnt
k
r~YnXd}t\}}zlyB|	|t}|gt}|d||g7}t|||}Wnt|YnX||_||_Wdt|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.NzWsemaphore_tracker: process died unexpectedly, relaunching.  Some semaphores might leak.z;from multiprocessing.semaphore_tracker import main;main(%d)z-c)r
roswaitpidWNOHANGcloserwarningswarnappendsysstderrfileno	ExceptionpiperZget_executablerZ_args_from_interpreter_flagsZspawnv_passfds)	r
pidZstatusZfds_to_passcmdrwZexeargsrrrr&s8





zSemaphoreTracker.ensure_runningcCs|d|dS)z2Register name of semaphore with semaphore tracker.ZREGISTERN)_send)r
namerrrrQszSemaphoreTracker.registercCs|d|dS)z4Unregister name of semaphore with semaphore tracker.Z
UNREGISTERN)r#)r
r$rrrrUszSemaphoreTracker.unregistercCs`|d||d}t|dkr.tdt|j|}|t|ks\td|t|dS)Nz{0}:{1}
asciiiz
name too longznbytes {0:n} but len(msg) {1:n})	rformatencodelen
ValueErrorrwriterAssertionError)r
rr$msgnbytesrrrr#YszSemaphoreTracker._sendN)	__name__
__module____qualname__rrrrrr#rrrrrs+rcCsttjtjttjtjx6tjtjfD]&}y|Wq.tk
rRYq.Xq.Wt	}zt
|d}x|D]}yJ|d\}}|dkr|
|n |dkr||ntd|Wqrtk
rytjtWnYnXYqrXqrWWdQRXWd|r<ytdt|Wntk
r:YnXxf|D]^}zT|d}yt|Wn6tk
r}ztd	||fWdd}~XYnXWdXqBWXdS)
zRun semaphore tracker.rb:sREGISTERs
UNREGISTERzunrecognized command %rNzRsemaphore_tracker: There appear to be %d leaked semaphores to clean up at shutdownr%zsemaphore_tracker: %r: %s)signalSIGINTSIG_IGNSIGTERMrstdinstdoutrrsetopenstripsplitaddremoveRuntimeError
excepthookexc_inforrr(decode_multiprocessingZ
sem_unlink)fdfcachelinerr$errrmainlsJ



(rI)rr3rr	rrCrr__all__objectrZ_semaphore_trackerrrrrrIrrrr<module>s
J