HTTP.HTTP2.Pool (http_runtime v0.16.0)
View SourceBounded profile-aware HTTP/2 connection pool.
Summary
Functions
Returns a specification to start this module under a supervisor.
Claims the per-key connection slot for an out-of-band connector.
Fails an out-of-band connection attempt and wakes queued reservations.
Stops new reservations on an owner that received GOAWAY.
Atomically reserves one stream slot for key.
Reserves an available stream without queueing or starting a connection.
Updates capability observed in valid peer SETTINGS for one connection.
Updates one owner's effective peer stream limit.
Types
Functions
@spec cancel(pid(), reservation()) :: :ok | {:error, :unknown_reservation}
Returns a specification to start this module under a supervisor.
See Supervisor.
Claims the per-key connection slot for an out-of-band connector.
Fails an out-of-band connection attempt and wakes queued reservations.
Stops new reservations on an owner that received GOAWAY.
@spec release(pid(), key(), reservation()) :: :ok
@spec reserve(pid(), key(), keyword()) :: {:ok, pid(), reservation()} | {:connect, reservation()} | {:error, term()}
Atomically reserves one stream slot for key.
@spec start_link(keyword()) :: GenServer.on_start()
@spec try_reserve(pid(), key()) :: {:ok, pid(), reservation()} | :none
Reserves an available stream without queueing or starting a connection.
@spec update_capabilities(pid(), key(), pid(), map()) :: :ok | {:error, :unknown_owner | :invalid_capabilities}
Updates capability observed in valid peer SETTINGS for one connection.
Updates one owner's effective peer stream limit.