pub struct Bulkhead { /* private fields */ }Expand description
Bulkhead pattern implementation
Implementations§
Source§impl Bulkhead
impl Bulkhead
Sourcepub fn new(config: BulkheadConfig) -> Self
pub fn new(config: BulkheadConfig) -> Self
Create a new bulkhead
Sourcepub async fn try_acquire(&self) -> Result<BulkheadGuard, BulkheadError>
pub async fn try_acquire(&self) -> Result<BulkheadGuard, BulkheadError>
Try to acquire a slot
Sourcepub async fn stats(&self) -> BulkheadStats
pub async fn stats(&self) -> BulkheadStats
Get current statistics
Sourcepub async fn update_config(&self, config: BulkheadConfig)
pub async fn update_config(&self, config: BulkheadConfig)
Update configuration
Sourcepub async fn config(&self) -> BulkheadConfig
pub async fn config(&self) -> BulkheadConfig
Get configuration
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Bulkhead
impl !RefUnwindSafe for Bulkhead
impl Send for Bulkhead
impl Sync for Bulkhead
impl Unpin for Bulkhead
impl !UnwindSafe for Bulkhead
Blanket Implementations§
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request