liveHandles property

List<Object> get liveHandles

Every handle this device made and nobody has given back yet, oldest first: textures, geometry buffers, buffers, pipelines and query sets.

What a leak looks like on a fake. A real backend's leak is memory that never comes back, which no test sees; here it is a handle still in this list after the test has torn down what it built. A handle leaves it when its dispose (or the device's release…) runs, and the list empties when the device itself is disposed, since that ends them all. A view (StorageBuffer.asIndices, GeometryBuffer.slice) is its buffer's, not a handle of its own, and is never listed.

Implementation

List<Object> get liveHandles => List<Object>.unmodifiable(_live);