Struct wgpu_core::device::life::ActiveSubmission
source · struct ActiveSubmission<A: Api> {
index: FenceValue,
last_resources: NonReferencedResources<A>,
mapped: Vec<Valid<BufferId>>,
encoders: Vec<EncoderInFlight<A>>,
work_done_closures: SmallVec<[SubmittedWorkDoneClosure; 1]>,
}
Expand description
Resources used by a queue submission, and work to be done once it completes.
Fields§
§index: FenceValue
The index of the submission we track.
When Device::fence
’s value is greater than or equal to this, our queue
submission has completed.
last_resources: NonReferencedResources<A>
Resources to be freed once this queue submission has completed.
When the device is polled, for completed submissions,
triage_submissions
merges these into
LifetimeTracker::free_resources
. From there,
LifetimeTracker::cleanup
passes them to the hal to be freed.
This includes things like temporary resources and resources that are used by submitted commands but have been dropped by the user (meaning that this submission is their last reference.)
mapped: Vec<Valid<BufferId>>
Buffers to be mapped once this submission has completed.
encoders: Vec<EncoderInFlight<A>>
§work_done_closures: SmallVec<[SubmittedWorkDoneClosure; 1]>
List of queue “on_submitted_work_done” closures to be called once this submission has completed.