public GCStatsSnapshot GetSnapshot(bool reset = false) { lock (myLock) { var newSnapshot = new GCStatsSnapshot(GC.CollectionCount(0) - lastSnapshot.Gen0, GC.CollectionCount(1) - lastSnapshot.Gen1, GC.CollectionCount(2) - lastSnapshot.Gen2); if (reset) { lastSnapshot = newSnapshot; } return(newSnapshot); } }
public GCStats() { lastSnapshot = new GCStatsSnapshot(GC.CollectionCount(0), GC.CollectionCount(1), GC.CollectionCount(2)); }