Added reset functionality
This commit is contained in:
parent
47f626cc99
commit
8a77373b18
|
@ -25,6 +25,12 @@ namespace StardewModdingAPI.Framework.PerformanceCounter
|
|||
this._counter = new CircularBuffer<PerformanceCounterEntry>(PerformanceCounter.MAX_ENTRIES);
|
||||
}
|
||||
|
||||
public void Reset()
|
||||
{
|
||||
this._counter.Clear();
|
||||
this.PeakPerformanceCounterEntry = null;
|
||||
}
|
||||
|
||||
public int GetAverageCallsPerSecond()
|
||||
{
|
||||
var x = this._counter.GroupBy(
|
||||
|
|
|
@ -16,6 +16,22 @@ namespace StardewModdingAPI.Framework.PerformanceCounter
|
|||
this.InitializePerformanceCounterEvents();
|
||||
}
|
||||
|
||||
public void Reset()
|
||||
{
|
||||
foreach (var performanceCounter in this.PerformanceCounterEvents)
|
||||
{
|
||||
this.ResetCategory(performanceCounter);
|
||||
}
|
||||
}
|
||||
|
||||
public void ResetCategory(EventPerformanceCounterCategory category)
|
||||
{
|
||||
foreach (var eventPerformanceCounter in category.Event.PerformanceCounters)
|
||||
{
|
||||
eventPerformanceCounter.Value.Reset();
|
||||
}
|
||||
}
|
||||
|
||||
private void InitializePerformanceCounterEvents()
|
||||
{
|
||||
this.PerformanceCounterEvents = new HashSet<EventPerformanceCounterCategory>()
|
||||
|
|
|
@ -498,8 +498,9 @@ namespace StardewModdingAPI.Framework
|
|||
"Usage: performance_counters [name] [threshold]\n"+
|
||||
"Shows detailed performance counters for a specific event\n"+
|
||||
"- name: The (partial) name of the event\n"+
|
||||
"- threshold: The minimum avg execution time (ms) of the event\n"+
|
||||
"", this.HandleCommand);
|
||||
"- threshold: The minimum avg execution time (ms) of the event\n\n"+
|
||||
"Usage: performance_counters reset\n"+
|
||||
"Resets all performance counters\n", this.HandleCommand);
|
||||
this.GameInstance.CommandManager.Add(null, "pc", "Alias for performance_counters", this.HandleCommand);
|
||||
|
||||
// start handling command line input
|
||||
|
@ -1393,6 +1394,9 @@ namespace StardewModdingAPI.Framework
|
|||
}
|
||||
}
|
||||
break;
|
||||
case "reset":
|
||||
this.PerformanceCounterManager.Reset();
|
||||
return;
|
||||
default:
|
||||
showSummary = false;
|
||||
filterByName = arguments[0];
|
||||
|
|
Loading…
Reference in New Issue