[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@3.147.57.231: ~ $


��Yf��@s�ddlZddlZddlZddlZddlZddlZddlmZddlmZdddgZ	Gdd	�d	e
�Ze�Zej
Z
ejZejZejZd
d�ZdS)�N�)�spawn)�util�ensure_running�register�
unregisterc@sXeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�SemaphoreTrackercCstj�|_d|_dS)N)�	threadingZLock�_lock�_fd)�self�r
�F/opt/alt/python35/lib64/python3.5/multiprocessing/semaphore_tracker.py�__init__szSemaphoreTracker.__init__cCs|j�|jS)N)rr)rr
r
r�getfd!s
zSemaphoreTracker.getfdcCs|j��|jdk	rdSg}y|jtjj��Wntk
rQYnXd}tj�\}}zyW|j|�t	j
�}|gtj�}|d||g7}tj
|||�Wntj|��Yn
X||_Wdtj|�XWdQRXdS)z�Make 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
r�append�sys�stderr�fileno�	Exception�os�piperZget_executablerZ_args_from_interpreter_flagsZspawnv_passfds�close)rZfds_to_pass�cmd�r�wZexe�argsr
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|j�dj||�jd�}t|�dkrCtd��tj|j|�}|t|�kspt�dS)Nz{0}:{1}
�asciiiz
name too long)	r�format�encode�len�
ValueErrorr�writer�AssertionError)rrr�msg�nbytesr
r
rrKs
zSemaphoreTracker._sendN)	�__name__�
__module__�__qualname__rrrrrrr
r
r
rrsrc-Cs�tjtjtj�tjtjtj�x=tjtjfD])}y|j�Wq?tk
rgYq?Xq?Wt	�}z�t
|d���}x�|D]�}yg|j�jd�\}}|dkr�|j
|�n,|dkr�|j|�ntd|��Wq�tk
r4ytjtj��WnYnXYq�Xq�WWdQRXWd|rzytjdt|��Wntk
ryYnXxu|D]m}zc|jd�}ytj|�Wn<tk
r�}ztjd	||f�WYdd}~XnXWdXq�WXdS)
zRun semaphore tracker.�rb�:sREGISTERs
UNREGISTERzunrecognized command %rNzRsemaphore_tracker: There appear to be %d leaked semaphores to clean up at shutdownrzsemaphore_tracker: %r: %s)�signal�SIGINT�SIG_IGN�SIGTERMr�stdin�stdoutrr�set�open�strip�split�add�remove�RuntimeError�
excepthook�exc_info�warnings�warnr"�decode�_multiprocessingZ
sem_unlink)�fd�f�cache�linerr�er
r
r�main]sJ
		

	

.rE)rr-rr	r<r?�rr�__all__�objectrZ_semaphore_trackerrrrrrEr
r
r
r�<module>s;					

Filemanager

Name Type Size Permission Actions
__init__.cpython-35.opt-1.pyc File 563 B 0644
__init__.cpython-35.opt-2.pyc File 547 B 0644
__init__.cpython-35.pyc File 563 B 0644
connection.cpython-35.opt-1.pyc File 26.18 KB 0644
connection.cpython-35.opt-2.pyc File 23.98 KB 0644
connection.cpython-35.pyc File 26.55 KB 0644
context.cpython-35.opt-1.pyc File 13.2 KB 0644
context.cpython-35.opt-2.pyc File 11.82 KB 0644
context.cpython-35.pyc File 13.2 KB 0644
forkserver.cpython-35.opt-1.pyc File 6.98 KB 0644
forkserver.cpython-35.opt-2.pyc File 6.2 KB 0644
forkserver.cpython-35.pyc File 7.09 KB 0644
heap.cpython-35.opt-1.pyc File 6.4 KB 0644
heap.cpython-35.opt-2.pyc File 6.38 KB 0644
heap.cpython-35.pyc File 6.61 KB 0644
managers.cpython-35.opt-1.pyc File 33.96 KB 0644
managers.cpython-35.opt-2.pyc File 31.47 KB 0644
managers.cpython-35.pyc File 34.56 KB 0644
pool.cpython-35.opt-1.pyc File 21.88 KB 0644
pool.cpython-35.opt-2.pyc File 20.31 KB 0644
pool.cpython-35.pyc File 22.19 KB 0644
popen_fork.cpython-35.opt-1.pyc File 2.28 KB 0644
popen_fork.cpython-35.opt-2.pyc File 2.26 KB 0644
popen_fork.cpython-35.pyc File 2.33 KB 0644
popen_forkserver.cpython-35.opt-1.pyc File 2.48 KB 0644
popen_forkserver.cpython-35.opt-2.pyc File 2.47 KB 0644
popen_forkserver.cpython-35.pyc File 2.48 KB 0644
popen_spawn_posix.cpython-35.opt-1.pyc File 2.26 KB 0644
popen_spawn_posix.cpython-35.opt-2.pyc File 2.25 KB 0644
popen_spawn_posix.cpython-35.pyc File 2.26 KB 0644
popen_spawn_win32.cpython-35.opt-1.pyc File 2.92 KB 0644
popen_spawn_win32.cpython-35.opt-2.pyc File 2.83 KB 0644
popen_spawn_win32.cpython-35.pyc File 2.99 KB 0644
process.cpython-35.opt-1.pyc File 7.91 KB 0644
process.cpython-35.opt-2.pyc File 6.86 KB 0644
process.cpython-35.pyc File 8.62 KB 0644
queues.cpython-35.opt-1.pyc File 9.48 KB 0644
queues.cpython-35.opt-2.pyc File 9.47 KB 0644
queues.cpython-35.pyc File 9.58 KB 0644
reduction.cpython-35.opt-1.pyc File 7.53 KB 0644
reduction.cpython-35.opt-2.pyc File 6.87 KB 0644
reduction.cpython-35.pyc File 7.58 KB 0644
resource_sharer.cpython-35.opt-1.pyc File 5.46 KB 0644
resource_sharer.cpython-35.opt-2.pyc File 5.02 KB 0644
resource_sharer.cpython-35.pyc File 5.5 KB 0644
semaphore_tracker.cpython-35.opt-1.pyc File 3.6 KB 0644
semaphore_tracker.cpython-35.opt-2.pyc File 3.28 KB 0644
semaphore_tracker.cpython-35.pyc File 3.63 KB 0644
sharedctypes.cpython-35.opt-1.pyc File 7.24 KB 0644
sharedctypes.cpython-35.opt-2.pyc File 6.99 KB 0644
sharedctypes.cpython-35.pyc File 7.31 KB 0644
spawn.cpython-35.opt-1.pyc File 6.84 KB 0644
spawn.cpython-35.opt-2.pyc File 6.36 KB 0644
spawn.cpython-35.pyc File 6.89 KB 0644
synchronize.cpython-35.opt-1.pyc File 11.67 KB 0644
synchronize.cpython-35.opt-2.pyc File 11.66 KB 0644
synchronize.cpython-35.pyc File 11.99 KB 0644
util.cpython-35.opt-1.pyc File 10.01 KB 0644
util.cpython-35.opt-2.pyc File 9.3 KB 0644
util.cpython-35.pyc File 10.14 KB 0644