Module: Julewire::Ractor

Defined in:
lib/julewire/ractor.rb,
lib/julewire/ractor/bridge.rb,
lib/julewire/ractor/fanout.rb,
lib/julewire/ractor/version.rb,
lib/julewire/ractor/child_stats.rb,
lib/julewire/ractor/destination.rb,
lib/julewire/ractor/bridge/stats.rb,
lib/julewire/ractor/port_lifecycle.rb,
lib/julewire/ractor/remote_payload.rb,
lib/julewire/ractor/remote_runtime.rb,
lib/julewire/ractor/destination_worker.rb,
lib/julewire/ractor/bridge/bridge_thread.rb,
lib/julewire/ractor/remote_summary_record.rb,
lib/julewire/ractor/reply_timeout_scheduler.rb,
lib/julewire/ractor/bridge/runtime_validation.rb

Defined Under Namespace

Modules: Bridge, PortLifecycle, RemotePayload Classes: Destination, Fanout, RemoteRuntime, RemoteSummaryRecord, ReplyTimeoutScheduler

Constant Summary collapse

VERSION =
"1.0.0"

Class Method Summary collapse

Class Method Details

.child_statsObject



13
14
15
# File 'lib/julewire/ractor.rb', line 13

def child_stats
  child_runtime&.child_stats || {}
end

.enable_default_destination_workers!Object



25
26
27
28
# File 'lib/julewire/ractor.rb', line 25

def enable_default_destination_workers!
  Core::Destinations.register(:default) { |name:, **options| Destination.new(name: name, **options) }
  nil
end

.fanout(destinations:) ⇒ Object



21
22
23
# File 'lib/julewire/ractor.rb', line 21

def fanout(destinations:, **)
  Fanout.new(destinations: destinations, **)
end

.healthObject



9
10
11
# File 'lib/julewire/ractor.rb', line 9

def health
  bridge_health
end

.reset_child_stats!Object



17
18
19
# File 'lib/julewire/ractor.rb', line 17

def reset_child_stats!
  child_runtime&.reset_child_stats!
end