pub struct BatchObjectHeaderWriter { /* private fields */ }Expand description
Batch writer that collects multiple object headers in memory and flushes them as a single contiguous I/O pass.
This reduces the number of serialization passes when creating many datasets
in parallel — each thread builds its ObjectHeaderWriter independently,
then all headers are serialized together.
Implementations§
Source§impl BatchObjectHeaderWriter
impl BatchObjectHeaderWriter
Sourcepub fn add(&mut self, writer: ObjectHeaderWriter)
pub fn add(&mut self, writer: ObjectHeaderWriter)
Add a pre-built ObjectHeaderWriter to the batch.
Sourcepub fn compute_sizes(&self) -> Vec<usize>
pub fn compute_sizes(&self) -> Vec<usize>
Compute the serialized size of each header without actually serializing. Returns sizes in the same order as headers were added.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for BatchObjectHeaderWriter
impl RefUnwindSafe for BatchObjectHeaderWriter
impl Send for BatchObjectHeaderWriter
impl Sync for BatchObjectHeaderWriter
impl Unpin for BatchObjectHeaderWriter
impl UnsafeUnpin for BatchObjectHeaderWriter
impl UnwindSafe for BatchObjectHeaderWriter
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