pub fn execute_deferred<H: Hal>(
ctx: &mut H::Context,
surface: &mut H::Texture,
recording: &Recording,
images: &[&H::Texture],
) -> Result<(H::Fence, Transient<H>)>where
H::Context: HalContext<Hal = H>,Expand description
Render a recording’s layers, then submit its root without waiting.
The shape a display path needs. Everything but the root is a prerequisite of it rather than part of the frame’s pacing, so those go through the waiting submission and are ordered before the root by having finished; only the root produces a fence, because the fence is what a page flip is gated on and the root is the pass that fills the image being flipped.
Both halves of the return travel together until the fence retires: the layer targets are what the submission is still sampling. Handing them back rather than hiding them is deliberate — a caller that owns the fence is the only one that knows when it retires.