pub struct GlobalConcurrencyLimitLayer { /* private fields */ }Expand description
Enforces a limit on the concurrent number of requests the underlying service can handle.
Unlike ConcurrencyLimitLayer, which enforces a per-service concurrency
limit, this layer accepts a owned semaphore (Arc<Semaphore>) which can be
shared across multiple services.
Cloning this layer will not create a new semaphore.
Implementations§
Source§impl GlobalConcurrencyLimitLayer
 
impl GlobalConcurrencyLimitLayer
Sourcepub fn new(max: usize) -> GlobalConcurrencyLimitLayer
 
pub fn new(max: usize) -> GlobalConcurrencyLimitLayer
Create a new GlobalConcurrencyLimitLayer.
Sourcepub fn with_semaphore(semaphore: Arc<Semaphore>) -> GlobalConcurrencyLimitLayer
 
pub fn with_semaphore(semaphore: Arc<Semaphore>) -> GlobalConcurrencyLimitLayer
Create a new GlobalConcurrencyLimitLayer from a Arc<Semaphore>
Trait Implementations§
Source§impl Clone for GlobalConcurrencyLimitLayer
 
impl Clone for GlobalConcurrencyLimitLayer
Source§fn clone(&self) -> GlobalConcurrencyLimitLayer
 
fn clone(&self) -> GlobalConcurrencyLimitLayer
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
 
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from 
source. Read moreSource§impl Debug for GlobalConcurrencyLimitLayer
 
impl Debug for GlobalConcurrencyLimitLayer
Source§impl<S> Layer<S> for GlobalConcurrencyLimitLayer
 
impl<S> Layer<S> for GlobalConcurrencyLimitLayer
Source§type Service = ConcurrencyLimit<S>
 
type Service = ConcurrencyLimit<S>
The wrapped service
Auto Trait Implementations§
impl Freeze for GlobalConcurrencyLimitLayer
impl !RefUnwindSafe for GlobalConcurrencyLimitLayer
impl Send for GlobalConcurrencyLimitLayer
impl Sync for GlobalConcurrencyLimitLayer
impl Unpin for GlobalConcurrencyLimitLayer
impl !UnwindSafe for GlobalConcurrencyLimitLayer
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