Skip to main content

fork_scope_stack

Function fork_scope_stack 

Source
pub fn fork_scope_stack() -> Result<ScopeStackHandle>
Expand description

Create an isolated scope stack below the current causal parent.

Capture the parent before spawning concurrent work, then install the returned stack with TASK_SCOPE_STACK.scope(...). The fork preserves event parentage but does not transfer scope-local registrations. Because the fork does not assert a root UUID, its first local OpenTelemetry span starts a new trace.

ยงExamples

use nemo_relay::api::runtime::{TASK_SCOPE_STACK, fork_scope_stack};

let stack = fork_scope_stack()?;
tokio::spawn(TASK_SCOPE_STACK.scope(stack, async {
    // Relay work in an isolated child task.
}));