Spigot Timings

Overhauls the Timings System adding performance tracking all around the Minecraft Server

By: Aikar <aikar@aikar.co>
This commit is contained in:
CraftBukkit/Spigot
2013-01-10 00:18:11 -05:00
parent 127d8c1595
commit 78524cb95e
16 changed files with 924 additions and 387 deletions

View File

@@ -411,7 +411,9 @@ public class CraftScheduler implements BukkitScheduler {
if (task.isSync()) {
this.currentTask = task;
try {
task.timings.startTiming(); // Spigot
task.run();
task.timings.stopTiming(); // Spigot
} catch (final Throwable throwable) {
task.getOwner().getLogger().log(
Level.WARNING,

View File

@@ -5,7 +5,10 @@ import org.bukkit.Bukkit;
import org.bukkit.plugin.Plugin;
import org.bukkit.scheduler.BukkitTask;
class CraftTask implements BukkitTask, Runnable {
import org.bukkit.craftbukkit.SpigotTimings; // Spigot
import org.spigotmc.CustomTimingsHandler; // Spigot
public class CraftTask implements BukkitTask, Runnable { // Spigot
private volatile CraftTask next = null;
public static final int ERROR = 0;
@@ -29,6 +32,7 @@ class CraftTask implements BukkitTask, Runnable {
private final int id;
private final long createdAt = System.nanoTime();
final CustomTimingsHandler timings; // Spigot
CraftTask() {
this(null, null, CraftTask.NO_REPEATING, CraftTask.NO_REPEATING);
}
@@ -54,6 +58,7 @@ class CraftTask implements BukkitTask, Runnable {
}
this.id = id;
this.period = period;
this.timings = this.isSync() ? SpigotTimings.getPluginTaskTimings(this, period) : null; // Spigot
}
@Override
@@ -131,4 +136,10 @@ class CraftTask implements BukkitTask, Runnable {
this.setPeriod(CraftTask.CANCEL);
return true;
}
// Spigot start
public String getTaskName() {
return (this.getTaskClass() == null) ? "Unknown" : this.getTaskClass().getName();
}
// Spigot end
}