pub(super) fn try_increment_size(&self) -> Option<DecrementSizeGuard<'_>> {
        if self.is_closed() {
            return None;
        }

        let mut size = self.size();

        while size < self.options.max_connections {
            let new_size = self.size.compare_and_swap(size, size + 1, Ordering::AcqRel);

            if new_size == size {
                return Some(DecrementSizeGuard::new(self));
            }

            size = new_size;
        }

        None
    }
/// Try to atomically increment the pool size for a new connection.
///
/// Returns `None` if we are at max_connections or if the pool is closed.
Try to atomically increment the pool size for a new connection.
Returns `None` if we are at max_connections or if the pool is closed.
Try to atomically increment the pool size for a new connection . Returns ` None ` if we are at max_connections or if the pool is closed .
pub(super) fn try_increment_size(&self) -> Option<DecrementSizeGuard<'_>> {
        if self.is_closed() {
            return None;
        }
        let mut size = self.size();
        while size < self.options.max_connections {
            let new_size = self.size.compare_and_swap(size, size + 1, Ordering::AcqRel);
            if new_size == size {
                return Some(DecrementSizeGuard::new(self));
            }
            size = new_size;
        }
        None
    }
pub ( super ) fn try_increment_size ( & self ) -> Option < DecrementSizeGuard < ' _ > > { if self . is_closed ( ) { return None ; } let mut size = self . size ( ) ; while size < self . options . max_connections { let new_size = self . size . compare_and_swap ( size , size + 1 , Ordering :: AcqRel ) ; if new_size == size { return Some ( DecrementSizeGuard :: new ( self ) ) ; } size = new_size ; } None }
Try to atomically increment the pool size for a new connection.
Try to atomically increment the pool size for a new connection .
&self
&self