class Obsctl::Server::ReconnectSignal

Overview

Internal synchronization primitive for supervisor reconnect sleeps.

Defined in:

obsctl/server/reconnect_signal.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new #

[View source]

Instance Method Detail

def cancel : Nil #

[View source]
def latest_request_epoch : UInt64 #

[View source]
def on_waiter_registered : Proc(Nil) | Nil #

Test-only hook invoked while @lock is held, immediately after a waiter is appended. Callbacks must not block and must not send on an unbuffered channel because that can deadlock waiter registration.


[View source]
def on_waiter_registered=(on_waiter_registered : Proc(Nil) | Nil) #

Test-only hook invoked while @lock is held, immediately after a waiter is appended. Callbacks must not block and must not send on an unbuffered channel because that can deadlock waiter registration.


[View source]
def request : UInt64 #

[View source]
def wait(delay : Time::Span, handled_request_epoch : UInt64) : WaitResult #

[View source]
def wake : Nil #

[View source]