Exception: Phronomy::SchedulerReentrancyError

Inherits:
Error
  • Object
show all
Defined in:
lib/phronomy.rb

Overview

Raised when Agent#invoke (a synchronous, blocking call) is attempted from inside an active scheduler task and strict_runtime_guards is enabled.

Calling a blocking invocation from within a scheduler task stalls the scheduler until the inner invocation completes, preventing other tasks from making progress (hidden deadlock risk). Use Agent#invoke_async followed by #await inside scheduler tasks instead.

This error is only raised when:

Phronomy.configure { |c| c.strict_runtime_guards = true }

By default a warning is logged and execution continues.