U e5dª- ã @ sÐ d ddgZ ddlZddlZddlZddlZddlZddlZddlZddlm Z m Z ddlZddlm Z ddlmZ ejjZdd lmZmZmZmZmZ G d d „ d eƒZeƒ ZG dd„ deƒZG dd„ deƒZdS ) ÚQueueÚSimpleQueueÚ JoinableQueueé N)ÚEmptyÚFullé )Ú connection)Úcontext)ÚdebugÚinfoÚFinalizeÚregister_after_forkÚ is_exitingc @ sº e Zd Zd*dd„Zdd„ Zdd„ Zdd „ Zd+dd „Zd,dd„Zdd„ Z dd„ Z dd„ Zdd„ Zdd„ Z dd„ Zdd„ Zdd„ Zd d!„ Zed"d#„ ƒZed$d%„ ƒZed&d'„ ƒZed(d)„ ƒZdS )-r r c C s’ |dkrddl m} || _tjdd�\| _| _| ¡ | _t ¡ | _tj dkrTd | _n | ¡ | _| |¡| _d| _| ¡ tj dkrŽt| tjƒ d S )Nr r )Ú SEM_VALUE_MAXF©ZduplexÚwin32)Zsynchronizer Ú_maxsizer ÚPipeÚ_readerÚ_writerÚLockÚ_rlockÚosÚgetpidÚ_opidÚsysÚplatformÚ_wlockZBoundedSemaphoreÚ_semÚ _ignore_epipeÚ_after_forkr r ©ÚselfÚmaxsizeÚctx© r% ú./usr/lib64/python3.8/multiprocessing/queues.pyÚ__init__$ s zQueue.__init__c C s. t | ¡ | j| j| j| j| j| j| j| j fS ©N) r Úassert_spawningr r r r r r r r ©r" r% r% r&