Struct tower::balance::pool::Pool [−][src]
pub struct Pool<MS, Target, Request> where
MS: MakeService<Target, Request>,
MS::MakeError: Into<BoxError>,
MS::Error: Into<BoxError>,
Target: Clone, { /* fields omitted */ }
Expand description
A dynamically sized, load-balanced pool of Service
instances.
Implementations
Construct a new dynamically sized Pool
.
If many calls to poll_ready
return Pending
, new_service
is used to
construct another Service
that is then added to the load-balanced pool.
If many calls to poll_ready
succeed, the most recently added Service
is dropped from the pool.
Trait Implementations
Responses given by the service.
Errors produced by the service.
The future response value.
Returns Poll::Ready(Ok(()))
when the service is able to process requests. Read more
Auto Trait Implementations
impl<MS, Target, Request> !RefUnwindSafe for Pool<MS, Target, Request>
impl<MS, Target, Request> Send for Pool<MS, Target, Request> where
MS: Send,
Request: Send,
Target: Send,
<MS as MakeService<Target, Request>>::Future: Send,
<MS as MakeService<Target, Request>>::Service: Send,
impl<MS, Target, Request> Sync for Pool<MS, Target, Request> where
MS: Sync,
Request: Sync,
Target: Sync,
<MS as MakeService<Target, Request>>::Future: Sync,
<MS as MakeService<Target, Request>>::Service: Sync,
impl<MS, Target, Request> !UnwindSafe for Pool<MS, Target, Request>
Blanket Implementations
Mutably borrows from an owned value. Read more
Yields a mutable reference to the service when it is ready to accept a request.
please use the ServiceExt::ready
method instead
Yields a mutable reference to the service when it is ready to accept a request.
fn ready_oneshot(self) -> ReadyOneshot<Self, Request>ⓘNotable traits for ReadyOneshot<T, Request>impl<T, Request> Future for ReadyOneshot<T, Request> where
T: Service<Request>, type Output = Result<T, T::Error>;
where
Self: Sized,
fn ready_oneshot(self) -> ReadyOneshot<Self, Request>ⓘNotable traits for ReadyOneshot<T, Request>impl<T, Request> Future for ReadyOneshot<T, Request> where
T: Service<Request>, type Output = Result<T, T::Error>;
where
Self: Sized,
impl<T, Request> Future for ReadyOneshot<T, Request> where
T: Service<Request>, type Output = Result<T, T::Error>;
Yields the service when it is ready to accept a request.
Consume this Service
, calling with the providing request once it is ready.
Executes a new future after this service’s future resolves. This does
not alter the behaviour of the poll_ready
method. Read more
fn map_response<F, Response>(self, f: F) -> MapResponse<Self, F> where
Self: Sized,
F: FnOnce(Self::Response) -> Response + Clone,
fn map_response<F, Response>(self, f: F) -> MapResponse<Self, F> where
Self: Sized,
F: FnOnce(Self::Response) -> Response + Clone,
Maps this service’s response value to a different value. This does not
alter the behaviour of the poll_ready
method. Read more
Maps this service’s error value to a different value. This does not
alter the behaviour of the poll_ready
method. Read more
Maps this service’s result type (Result<Self::Response, Self::Error>
)
to a different value, regardless of whether the future succeeds or
fails. Read more
fn map_request<F, NewRequest>(self, f: F) -> MapRequest<Self, F> where
Self: Sized,
F: FnMut(NewRequest) -> Request + Clone,
fn map_request<F, NewRequest>(self, f: F) -> MapRequest<Self, F> where
Self: Sized,
F: FnMut(NewRequest) -> Request + Clone,
Composes a function in front of the service. Read more
Composes an asynchronous function after this service. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more