Skip to main content

Module foreground

Module foreground 

Source
Expand description

Explicit caller-owned foreground command execution. Caller-owned foreground command execution.

Unlike contained, bounded, and daemon spawning, this module intentionally does not configure process groups, sessions, descriptor inheritance, consoles, owner-death policy, or environment. The supplied Command is the complete native contract.

Functions§

exec
Replace the current Unix process image using the supplied native command. Success never returns; failure returns the original OS error. This does not spawn a child or change the caller’s requested argv, environment, stdio, pre-exec hooks, process group, or session policy. As with CommandExt::exec, failed execution may leave setup changes applied to the current process.
output
Run with std’s concurrent captured-output behavior and native exit status. Its stdio behavior is exactly Command::output: unspecified stdout/stderr are captured while explicit stream overrides remain caller-controlled. Every other caller-owned command property remains unchanged.
spawn
Start a caller-configured command and transfer its native child ownership. No containment or drop cleanup is added: the caller remains responsible for consuming pipes, termination and reaping, exactly as with Command::spawn. Use a contained/session API when that ownership policy is desired instead.
status
Run and return the native exit status.