Move watchdog and timings code to tick method, not tick loop itself.

By: md_5 <git@md-5.net>
This commit is contained in:
Spigot
2014-01-22 19:23:59 +11:00
parent 975187b00f
commit df37e6e342
7 changed files with 45 additions and 49 deletions

View File

@@ -1,11 +1,11 @@
From 704af76ef5f2f961623aa145c110df9e651fe2cf Mon Sep 17 00:00:00 2001
From a6907b6a5936948036e02fdc6ce81f554bb787e9 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Wed, 22 Jan 2014 19:14:15 +1100
Subject: [PATCH] Highly Optimized Tick Loop
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 85e9e53..1225411 100644
index 588ce0a..0ca1bb6 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -101,6 +101,11 @@ public abstract class MinecraftServer implements ICommandListener, Runnable, IMo
@@ -20,7 +20,7 @@ index 85e9e53..1225411 100644
public MinecraftServer(OptionSet options, Proxy proxy) { // CraftBukkit - signature file -> OptionSet
i = this;
@@ -429,42 +434,29 @@ public abstract class MinecraftServer implements ICommandListener, Runnable, IMo
@@ -429,38 +434,25 @@ public abstract class MinecraftServer implements ICommandListener, Runnable, IMo
this.p.setServerInfo(new ServerPingServerData("1.7.2", 4));
this.a(this.p);
@@ -62,16 +62,12 @@ index 85e9e53..1225411 100644
+ catchupTime = Math.min(1000000000, Math.abs(wait));
}
-
- Thread.sleep(1L);
+ currentTPS = (currentTPS * 0.95) + (1E9 / (curTime - lastTick) * 0.05);
+ lastTick = curTime;
+ MinecraftServer.currentTick++;
SpigotTimings.serverTickTimer.startTiming();
- Thread.sleep(1L);
+ this.t();
this.N = true;
SpigotTimings.serverTickTimer.stopTiming();
org.spigotmc.CustomTimingsHandler.tick();
org.spigotmc.WatchdogThread.tick();
}
+ // Spigot end
} else {