Funkin/source/funkin/util/plugins/MemoryGCPlugin.hx

38 lines
752 B
Haxe
Raw Normal View History

2024-02-28 00:19:08 -05:00
package funkin.util.plugins;
import flixel.FlxBasic;
2024-03-13 21:47:15 -04:00
import funkin.util.TimerUtil;
2024-02-28 00:19:08 -05:00
/**
* A plugin which adds functionality to press `Ins` to immediately perform memory garbage collection.
*/
class MemoryGCPlugin extends FlxBasic
{
public function new()
{
super();
}
public static function initialize():Void
{
FlxG.plugins.addPlugin(new MemoryGCPlugin());
}
public override function update(elapsed:Float):Void
{
super.update(elapsed);
if (FlxG.keys.justPressed.INSERT)
{
2024-03-13 21:47:15 -04:00
var perfStart:Float = TimerUtil.start();
2024-02-28 00:19:08 -05:00
funkin.util.MemoryUtil.collect(true);
2024-03-13 21:47:15 -04:00
trace('Memory GC took: ${TimerUtil.seconds(perfStart)}');
2024-02-28 00:19:08 -05:00
}
}
public override function destroy():Void
{
super.destroy();
}
}