File: //lib64/python3.8/multiprocessing/__pycache__/synchronize.cpython-38.pyc
U
e5dZ- ã @ s, d dddddgZ ddlZddlZddlZddlZddlZdd lmZ dd
lmZ ddlm Z zddlm
Z
mZ W n ek
rŒ ed
ƒ‚Y nX e
edƒƒ\ZZej
jZG dd„ deƒZ
G dd„ de
ƒZG dd„ deƒZG dd „ d e
ƒZG dd„ de
ƒZG dd„ deƒZG dd„ deƒZG dd„ dejƒZdS )ÚLockÚRLockÚ SemaphoreÚBoundedSemaphoreÚ ConditionÚEventé Né )Úcontext)Úprocess)Úutil)ÚSemLockÚ
sem_unlinkz—This platform lacks a functioning sem_open implementation, therefore, the required synchronization primitives needed will not function, see issue 3770.é c @ s\ e Zd Ze ¡ Zdd„ Zedd„ ƒZdd„ Z dd„ Z
d d
„ Zdd„ Zd
d„ Z
edd„ ƒZdS )r c C sö |d krt j ¡ }| ¡ }tjdkp*|dk}tdƒD ]>}z t |||| ¡ |¡ }| _
W n tk
rl Y q4X q|q4tdƒ‚t
d|j ¡ | ¡ tjdkr²dd„ } t | | ¡ | j
jd k ròdd lm}
|
| j
jd
ƒ tj| tj| j
jfdd d S )
NÚwin32Úforkéd zcannot find name for semaphorezcreated semlock with handle %sc S s | j ¡ d S ©N)Ú_semlockÚ_after_fork)Úobj© r ú3/usr/lib64/python3.8/multiprocessing/synchronize.pyr G s z%SemLock.__init__.<locals>._after_forkr )ÚregisterÚ semaphorer )Zexitpriority)r Z_default_contextZget_contextZget_start_methodÚsysÚplatformÚrangeÚ_multiprocessingr Ú
_make_namer ÚFileExistsErrorr ÚdebugÚhandleÚ
_make_methodsZregister_after_forkÚnameÚresource_trackerr ZFinalizeÚ_cleanup)ÚselfÚkindÚvalueÚmaxvalueÚctxr# Z
unlink_nowÚiÚslr r r r r Ú__init__2 s8
þ
ÿzSemLock.__init__c C s"