pub struct SegReadLock { /* private fields */ }Expand description
RAII read-lock over a set of segments. acquire sets locked = 1; Drop releases it
best-effort even if the holder is cancelled (e.g. the HTTP client disconnects and the handler
future is dropped) or panics — so an interrupted export never leaves footage permanently
un-prunable. Drop can’t await, so it spawns the release; the startup clear_segment_read_locks
is the backstop if that spawn can’t finish.
Implementations§
Source§impl SegReadLock
impl SegReadLock
pub async fn acquire(pool: &SqlitePool, ids: Vec<String>) -> Self
Trait Implementations§
Source§impl Drop for SegReadLock
impl Drop for SegReadLock
Auto Trait Implementations§
impl !RefUnwindSafe for SegReadLock
impl !UnwindSafe for SegReadLock
impl Freeze for SegReadLock
impl Send for SegReadLock
impl Sync for SegReadLock
impl Unpin for SegReadLock
impl UnsafeUnpin for SegReadLock
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
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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 more