Heart
Timer sending heartbeats at regular intervals.
Attributes
| Attribute | Type | Description |
|---|---|---|
| timer | kombu.asynchronous.timer.Timer | Timer to use. |
| eventer | celery.events.EventDispatcher | Event dispatcher to use. |
| interval | float = 2.0 | Time in seconds between sending heartbeats. |
| tref | kombu.asynchronous.timer.Entry = None | Reference to the scheduled heartbeat event used to cancel the timer when stopping. |
| _send_sent_signal | callable | Internal signal sender used to dispatch the heartbeat_sent signal only if active receivers exist. |
Constructor
Signature
def Heart(
timer: kombu.asynchronous.timer.Timer,
eventer: celery.events.EventDispatcher,
interval: float = None
)
Parameters
| Name | Type | Description |
|---|---|---|
| timer | kombu.asynchronous.timer.Timer | Timer to use for scheduling heartbeats. |
| eventer | celery.events.EventDispatcher | Event dispatcher to use for sending events. |
| interval | float = None | Time in seconds between sending heartbeats. Defaults to 2.0 seconds. |
Signature
def Heart(
timer: kombu.asynchronous.timer.Timer,
eventer: celery.events.EventDispatcher,
interval: float = None
) - > null
Parameters
| Name | Type | Description |
|---|---|---|
| timer | kombu.asynchronous.timer.Timer | The asynchronous timer used to schedule recurring heartbeat events |
| eventer | celery.events.EventDispatcher | The event dispatcher responsible for transmitting heartbeat messages to the broker |
| interval | float = None | The time in seconds between heartbeat transmissions; defaults to 2.0 seconds if not provided |
Methods
start()
@classmethod
def start() - > null
Initiates the heartbeat cycle by sending an online status event and scheduling recurring heartbeat tasks.
Returns
| Type | Description |
|---|---|
null | None |
stop()
@classmethod
def stop() - > null
Cancels the scheduled heartbeat timer and sends an offline status event to signal the worker is shutting down.
Returns
| Type | Description |
|---|---|
null | None |