Skip to main content

write_slices_positional

Function write_slices_positional 

Source
pub fn write_slices_positional(
    out: &File,
    slices: &[&[u8]],
    offsets: &[u64],
    n_workers: usize,
) -> WriteStats
Expand description

Write already-decoded slices of one output stream at pre-computed offsets, across a no-barrier, self-dispatching worker pool — zero-copy parallel pwrite, no ordered collector and no serial concatenation.

The two-phase sibling of write_segments_positional: use it when the segments are already materialised (e.g. members decoded in parallel by a prior gatling_for_each pass) and their exact sizes — hence offsets — are known. out must be pre-sized to the total (set_len). Each worker claims the next slice index and write_all_at (pwrite)s slices[i] at offsets[i]; the slices are never copied through the pool, and positional writes to disjoint regions preserve exact stream byte-order with no ordering on the critical path.