EntropyEngine::Core::Concurrency::NodeDeferredEvent
EntropyEngine::Core::Concurrency::NodeDeferredEvent
Section titled “EntropyEngine::Core::Concurrency::NodeDeferredEvent”Work queue is full - this node has to wait. More…
#include <WorkGraphEvents.h>
Inherits from EntropyEngine::Core::Concurrency::WorkGraphEvent
Public Functions
Section titled “Public Functions”| Name | |
|---|---|
| NodeDeferredEvent(const WorkGraph * g, NodeHandle n, size_t depth) |
Public Attributes
Section titled “Public Attributes”| Name | |
|---|---|
| size_t | queueDepth How many nodes are waiting in deferred queue. |
| NodeHandle | node The node that couldn’t be scheduled. |
Additional inherited members
Section titled “Additional inherited members”Public Functions inherited from EntropyEngine::Core::Concurrency::WorkGraphEvent
| Name | |
|---|---|
| WorkGraphEvent(const WorkGraph * g) |
Public Attributes inherited from EntropyEngine::Core::Concurrency::WorkGraphEvent
| Name | |
|---|---|
| std::chrono::steady_clock::time_point | timestamp When this event was created. |
| const WorkGraph * | graph Which graph emitted this event. |
Detailed Description
Section titled “Detailed Description”struct EntropyEngine::Core::Concurrency::NodeDeferredEvent;Work queue is full - this node has to wait.
When the WorkContractGroup is at capacity, ready nodes get deferred instead of dropped. This event lets you monitor back-pressure in your system. High deferral rates suggest you need more worker threads or smaller work items.
eventBus->subscribe<NodeDeferredEvent>([](const auto& event) { LOG_WARN("Node {} deferred - queue depth: {}", event.node.getData()->name, event.queueDepth);
if (event.queueDepth > 100) { LOG_ERROR("Severe backlog detected!"); }});Public Functions Documentation
Section titled “Public Functions Documentation”function NodeDeferredEvent
Section titled “function NodeDeferredEvent”inline NodeDeferredEvent( const WorkGraph * g, NodeHandle n, size_t depth)Public Attributes Documentation
Section titled “Public Attributes Documentation”variable queueDepth
Section titled “variable queueDepth”size_t queueDepth;How many nodes are waiting in deferred queue.
variable node
Section titled “variable node”NodeHandle node;The node that couldn’t be scheduled.
Updated on 2026-01-26 at 17:14:35 -0500