hooks: use monotonic clock for main loop tasks

This commit is contained in:
Adam
2020-04-06 12:32:52 -04:00
parent 777feaad88
commit 6abc433141

View File

@@ -42,7 +42,6 @@ import javax.inject.Singleton;
import lombok.extern.slf4j.Slf4j;
import net.runelite.api.BufferProvider;
import net.runelite.api.Client;
import net.runelite.api.Constants;
import net.runelite.api.MainBufferProvider;
import net.runelite.api.NullItemID;
import net.runelite.api.RenderOverview;
@@ -75,6 +74,7 @@ import net.runelite.client.ui.overlay.OverlayManager;
import net.runelite.client.ui.overlay.OverlayRenderer;
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
import net.runelite.client.util.DeferredEventBus;
import net.runelite.client.util.RSTimeUnit;
/**
* This class contains field required for mixins and runelite hooks to work.
@@ -85,7 +85,7 @@ import net.runelite.client.util.DeferredEventBus;
@Slf4j
public class Hooks implements Callbacks
{
private static final long CHECK = Constants.GAME_TICK_LENGTH; // ms - how often to run checks
private static final long CHECK = RSTimeUnit.GAME_TICKS.getDuration().toNanos(); // ns - how often to run checks
private static final Injector injector = RuneLite.getInjector();
private static final Client client = injector.getInstance(Client.class);
@@ -192,7 +192,7 @@ public class Hooks implements Callbacks
clientThread.invoke();
long now = System.currentTimeMillis();
long now = System.nanoTime();
if (now - lastCheck < CHECK)
{