MemorySnapshot is a profiling tool to help diagnose memory usage.
MemorySnapshot, and all types in UnityEditor.MemoryProfiler.* are very experimental API, and will very likely change significantly going forward. Currently only il2cpp-based players are able to provide memory snapshots. The editor, and mono-based players will not respond to requests for new snapshots.
RequestNewSnapshot | Requests a new snapshot from the currently connected target of the profiler. Memory snapshots are supported on IL2CPP and Mono .NET 3.5/4.0 scripting backends, although .NET 3.5 has been deprecated as of 2018.3. NOTE: Each snapshot consists of approximately one managed object per recorded managed object. Snapshots taken from the editor will contain the objects in all previous snapshots that have not yet been garbage-collected. Therefore, repeated snapshots of the editor may grow exponentially. If you no longer need an old snapshot it is therefore advisable to null all references to it and call GC.Collect() before taking another one. |
OnSnapshotReceived | Event that will be fired when a new memory snapshot comes in through the profiler connection. Its argument will be a PackedMemorySnapshot. |