ActionController::Live::Stream
Порт Live::Buffer: буфер с backpressure поверх SizedQueue(10).
Constructors
new(response : HTTP::Server::Response)
SourceClass methods
queue_size
SourceInstance methods
abort
Потребитель (клиент) больше не читает: очистить буфер и отменить продюсера — заблокированный write и следующий write поднимут ClientDisconnected.
call_on_error
Sourceclose
Конец контента от продюсера; pump допивает буфер и завершает ответ (терминатор chunked допишет HTTP::Server::Response#close).
ignore_disconnect
ignore_disconnect=(ignore_disconnect : Bool)
ignore_disconnect?
Sourceon_error
Sourcepump
Перекачка буфера в сокет: каждый write+flush = отдельный chunk-фрейм. Ошибка сокета (клиент отключился) → abort → отмена fiber'а экшена.
response