public sealed class MemorySnapshotA reading of every arena at one moment.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
A snapshot rather than a live view, and doc 13's four arenas rather than one number. "The process is using 3 GB" is not a fact anybody can act on; "the managed heap is 400 MB, native allocations are 2.1 GB across 14 000 tracked resources, and the largest category is VkImage" is.
⚠ The native arena is only populated in a build that tracks. IsSupported is a compile-time constant that is false in release, so the rows say so rather than reading zero — a memory panel claiming no native allocations on a build that cannot see them is the most misleading thing it could do.
Fields and properties (2)
public IReadOnlyList<MemoryRow> RowsThe rows, grouped by arena in the order the enum declares.
public DateTimeOffset TakenWhen it was taken.
Methods (3)
public IEnumerable<MemoryRow> Of(MemoryArena arena)The rows of one arena.
public long BytesOf(MemoryArena arena)How many bytes one arena's byte-valued rows add up to.
public static MemorySnapshot Take(MemoryProviders? providers = null, TimeProvider? time = null)Takes a reading.
Used by (4)
- DiagnosticsPanelTestsVixen.Editor.App.Tests
- EditorApplicationVixen.Editor.App
- MemoryViewVixen.Editor.Profiler
- StatisticsAndMemoryTestsVixen.Editor.Profiler.Tests