File: //lib64/python3.6/multiprocessing/__pycache__/synchronize.cpython-36.opt-1.pyc
3
\/ @ s, d dddddgZ ddlZddlZddlZddlZddlZdd lmZ dd
lmZ ddlm Z yddlm
Z
mZ W n ek
r edY nX e
ed\ZZej
jZG dd deZ
G dd de
ZG dd deZG dd d e
ZG dd de
ZG dd deZG dd deZG dd dejZdS )LockRLock SemaphoreBoundedSemaphore ConditionEvent N )context)process)util)SemLock
sem_unlinkz*This platform lacks a functioning sem_openz( implementation, therefore, the requiredz+ synchronization primitives needed will notz function, see issue 3770. c @ s\ e Zd Zej Zdd Zedd Zdd Z dd Z
d d
Zdd Zd
d Z
edd ZdS )r c
C s |d krt jj }|j }tjdkp*|dk}xPtdD ]<}y tj|||| j | }| _
W n tk
rn Y q6X P q6W tdtj
d|j | j tjdkrdd } tj| | | j
jd k rdd lm}
|
| j
j tj| tj| j
jfd
d d S )Nwin32forkd zcannot find name for semaphorezcreated semlock with handle %sc S s | j j d S )N)_semlock_after_fork)obj r 3/usr/lib64/python3.6/multiprocessing/synchronize.pyr G s z%SemLock.__init__.<locals>._after_forkr )registerr )Zexitpriority)r Z_default_contextZget_contextZget_start_methodsysplatformrange_multiprocessingr
_make_namer FileExistsErrorr debughandle
_make_methodsZregister_after_forknamesemaphore_trackerr ZFinalize_cleanup)selfkindvaluemaxvaluectxr! Z
unlink_nowislr r r r r __init__2 s.
zSemLock.__init__c C s ddl m} t| || d S )Nr )
unregister)r"