o
    ›¨Êhò  ã                   @   s@   d Z ddlZddlmZ ddlmZmZ dZG dd„ deƒZdS )	zSingle-threaded execution pool.é    N)Úsignalsé   )ÚBasePoolÚapply_target)ÚTaskPoolc                       s0   e Zd ZdZdZ‡ fdd„Z‡ fdd„Z‡  ZS )r   z(Solo task pool (blocking, inline, fast).Tc                    s0   t ƒ j|i |¤Ž t| _d| _tjjd d� d S )Nr   )Úsender)ÚsuperÚ__init__r   Úon_applyÚlimitr   Úworker_process_initÚsend)ÚselfÚargsÚkwargs©Ú	__class__© úI/var/www/html/env/lib/python3.10/site-packages/celery/concurrency/solo.pyr	      s   zTaskPool.__init__c                    s*   t ƒ  ¡ }| dt ¡ gd dddœ¡ |S )Nr   Tr   )zmax-concurrencyÚ	processeszmax-tasks-per-childzput-guarded-by-semaphoreÚtimeouts)r   Ú	_get_infoÚupdateÚosÚgetpid)r   Úinfor   r   r   r      s   
ûzTaskPool._get_info)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úbody_can_be_bufferr	   r   Ú__classcell__r   r   r   r   r      s
    r   )	r   r   Úceleryr   Úbaser   r   Ú__all__r   r   r   r   r   Ú<module>   s    