pub struct QuicPool { /* private fields */ }๐Deprecated since 3.1.0: This crate has been marked for formal inclusion in the Agave Unstable API. From v4.0.0 onward, the
agave-unstable-api crate feature must be specified to acknowledge use of an interface that may break without warning.Trait Implementationsยง
Sourceยงimpl ConnectionPool for QuicPool
impl ConnectionPool for QuicPool
type BaseClientConnection = Quic
type NewConnectionConfig = QuicConfig
Sourceยงfn add_connection(
&mut self,
config: &Self::NewConnectionConfig,
addr: &SocketAddr,
) -> usize
fn add_connection( &mut self, config: &Self::NewConnectionConfig, addr: &SocketAddr, ) -> usize
Add a connection to the pool and return its index
Sourceยงfn num_connections(&self) -> usize
fn num_connections(&self) -> usize
Get the number of current connections in the pool
Sourceยงfn get(
&self,
index: usize,
) -> Result<Arc<Self::BaseClientConnection>, ConnectionPoolError>
fn get( &self, index: usize, ) -> Result<Arc<Self::BaseClientConnection>, ConnectionPoolError>
Get a connection based on its index in the pool, without checking if the
fn create_pool_entry( &self, _config: &Self::NewConnectionConfig, addr: &SocketAddr, ) -> Arc<Self::BaseClientConnection>
Sourceยงfn borrow_connection(&self) -> Arc<Self::BaseClientConnection>
fn borrow_connection(&self) -> Arc<Self::BaseClientConnection>
Get a connection from the pool. It must have at least one connection in the pool.
This randomly picks a connection in the pool.
Sourceยงfn check_pool_status(&self, required_pool_size: usize) -> PoolStatus
fn check_pool_status(&self, required_pool_size: usize) -> PoolStatus
Check if we need to create a new connection. If the count of the connections
is smaller than the pool size and if there is no connection at all.
Auto Trait Implementationsยง
impl Freeze for QuicPool
impl !RefUnwindSafe for QuicPool
impl Send for QuicPool
impl Sync for QuicPool
impl Unpin for QuicPool
impl !UnwindSafe for QuicPool
Blanket Implementationsยง
Sourceยงimpl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Sourceยงimpl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Sourceยงimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Sourceยงfn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Sourceยงimpl<T> Instrument for T
impl<T> Instrument for T
Sourceยงfn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Sourceยงfn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Sourceยงimpl<T> IntoEither for T
impl<T> IntoEither for T
Sourceยงfn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSourceยงfn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more