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.