
    i                     Z    d Z ddlmZ ddlmZ ddlmZ dZ G d dej                        Z	y	)
z Worker Event Heartbeat Bootstep.    )	bootsteps)	heartbeat   )Events)Heartc                   <     e Zd ZdZefZ	 d fd	Zd Zd ZeZ	 xZ
S )r   zBootstep sending event heartbeats.

    This service sends a ``worker-heartbeat`` message every n seconds.

    Note:
        Not to be confused with AMQP protocol level heartbeats.
    c                 R    | | _         || _        d |_        t        |   |fi | y N)enabledheartbeat_intervalheartsuper__init__)selfcwithout_heartbeatr   kwargs	__class__s        Z/var/www/html/eduruby.in/venv/lib/python3.12/site-packages/celery/worker/consumer/heart.pyr   zHeart.__init__   s.    ,,"4%f%    c                     t        j                  |j                  |j                  | j                        |_        |j
                  j                          y r
   )r   r   timerevent_dispatcherr   r   startr   r   s     r   r   zHeart.start   s8    //GGQ'')@)@
 	
r   c                 ^    |j                   xr |j                   j                         |_         y r
   )r   stopr   s     r   r   z
Heart.stop"   s    '',aggllnr   )FN)__name__
__module____qualname____doc__r   requiresr   r   r   shutdown__classcell__)r   s   @r   r   r   
   s+     yH >B&-Hr   r   N)
r!   celeryr   celery.workerr   eventsr   __all__StartStopStepr    r   r   <module>r+      s(    &  # 
I## r   