Struct Mapped Mutex Guard
pub struct MappedMutexGuard<'a, T: ?Sized> { /* private fields */ }
sync.Дескриптор удерживаемого Mutex, к которому была применена функция с помощью MutexGuard::map.
Его можно использовать для удержания подполю защищённых данных.
Реализации
impl<'a, T: ?Sized> MappedMutexGuard<'a, T>
pub fn map<U, F>(this: Self, f: F) -> MappedMutexGuard<'a, U>
Создаёт новый MappedMutexGuard для компонента заблокированных данных.
Эта операция не может завершиться неудачей, поскольку переданный MappedMutexGuard уже заблокировал мьютекс.
Это связанная функция, которую нужно использовать как MappedMutexGuard::map(...). Метод помешал бы использовать методы с таким же именем у содержимого заблокированных данных.
pub fn try_map<U, F>(this: Self, f: F) -> Result<MappedMutexGuard<'a, U>, Self>
Пытается создать новый MappedMutexGuard для компонента заблокированных данных. Если замыкание возвращает None, возвращается исходный guard.
Эта операция не может завершиться неудачей, поскольку переданный MappedMutexGuard уже заблокировал мьютекс.
Это связанная функция, которую нужно использовать как MappedMutexGuard::try_map(...). Метод помешал бы использовать методы с таким же именем у содержимого заблокированных данных.
Реализации трейтов
impl<'a, T: ?Sized + Debug> Debug for MappedMutexGuard<'a, T>
impl<'a, T: ?Sized> Deref for MappedMutexGuard<'a, T>
impl<'a, T: ?Sized> DerefMut for MappedMutexGuard<'a, T>
impl<'a, T: ?Sized + Display> Display for MappedMutexGuard<'a, T>
impl<'a, T: ?Sized> Drop for MappedMutexGuard<'a, T>
impl<'a, T> Send for MappedMutexGuard<'a, T>
impl<'a, T> Sync for MappedMutexGuard<'a, T>
Автоматические реализации трейтов
impl<'a, T> !RefUnwindSafe for MappedMutexGuard<'a, T>
impl<'a, T> !UnwindSafe for MappedMutexGuard<'a, T>
impl<'a, T> Freeze for MappedMutexGuard<'a, T>where T: ?Sized,
impl<'a, T> Unpin for MappedMutexGuard<'a, T>where T: ?Sized,
impl<'a, T> UnsafeUnpin for MappedMutexGuard<'a, T>where T: ?Sized,
Обобщённые реализации
impl<T> BorrowMut<T> for Twhere T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
impl<T> Instrument for T
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
impl<P, T> Receiver for P
type Target = T
arbitrary_self_types)
impl<T> ToString for T
impl<T> WithSubscriber for T
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Subscriber к этому типу, возвращая обёртку WithDispatch. Подробнее
MIT License
Copyright © Tokio Contributors
https://docs.rs/tokio/1.53.1/tokio/sync/struct.MappedMutexGuard.html