Mirror von
https://github.com/PaperMC/Paper.git
synchronisiert 2024-11-15 12:30:06 +01:00
05466e3b47
Upstream has released updates that appear to apply compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing. Bukkit Changes: d2834556 SPIGOT-4219: Event for PigZombies angering. CraftBukkit Changes:a9c796f1
SPIGOT-4184: Fix furnaces not matching Vanilla smelt or animations195f071e
SPIGOT-4219: Event for PigZombies angering.5e3082c7
SPIGOT-4230: Improve legacy block types
63 Zeilen
3.1 KiB
Diff
63 Zeilen
3.1 KiB
Diff
From 62d4ba558bbd6bdb3ef28b071fdfffa90af9eb93 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Sun, 5 Feb 2017 00:04:04 -0500
|
|
Subject: [PATCH] Remove CraftScheduler Async Task Debugger
|
|
|
|
I have not once ever seen this system help debug a crash.
|
|
One report of a suspected memory leak with the system.
|
|
|
|
This adds additional overhead to asynchronous task dispatching
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
|
|
index 26753fac5e..a2fadaf82c 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
|
|
@@ -84,8 +84,8 @@ public class CraftScheduler implements BukkitScheduler {
|
|
private volatile CraftTask currentTask = null;
|
|
private volatile int currentTick = -1;
|
|
private final Executor executor = Executors.newCachedThreadPool(new com.google.common.util.concurrent.ThreadFactoryBuilder().setNameFormat("Craft Scheduler Thread - %1$d").build()); // Spigot
|
|
- private CraftAsyncDebugger debugHead = new CraftAsyncDebugger(-1, null, null) {@Override StringBuilder debugTo(StringBuilder string) {return string;}};
|
|
- private CraftAsyncDebugger debugTail = debugHead;
|
|
+ //private CraftAsyncDebugger debugHead = new CraftAsyncDebugger(-1, null, null) {@Override StringBuilder debugTo(StringBuilder string) {return string;}}; // Paper
|
|
+ //private CraftAsyncDebugger debugTail = debugHead; // Paper
|
|
private static final int RECENT_TICKS;
|
|
|
|
static {
|
|
@@ -381,7 +381,7 @@ public class CraftScheduler implements BukkitScheduler {
|
|
}
|
|
parsePending();
|
|
} else {
|
|
- debugTail = debugTail.setNext(new CraftAsyncDebugger(currentTick + RECENT_TICKS, task.getOwner(), task.getTaskClass()));
|
|
+ //debugTail = debugTail.setNext(new CraftAsyncDebugger(currentTick + RECENT_TICKS, task.getOwner(), task.getTaskClass())); // Paper
|
|
executor.execute(new ServerSchedulerReportingWrapper(task)); // Paper
|
|
// We don't need to parse pending
|
|
// (async tasks must live with race-conditions if they attempt to cancel between these few lines of code)
|
|
@@ -398,7 +398,7 @@ public class CraftScheduler implements BukkitScheduler {
|
|
pending.addAll(temp);
|
|
temp.clear();
|
|
MinecraftTimings.bukkitSchedulerFinishTimer.stopTiming();
|
|
- debugHead = debugHead.getNextHead(currentTick);
|
|
+ //debugHead = debugHead.getNextHead(currentTick); // Paper
|
|
}
|
|
|
|
private void addTask(final CraftTask task) {
|
|
@@ -457,10 +457,15 @@ public class CraftScheduler implements BukkitScheduler {
|
|
|
|
@Override
|
|
public String toString() {
|
|
+ // Paper start
|
|
+ return "";
|
|
+ /*
|
|
int debugTick = currentTick;
|
|
StringBuilder string = new StringBuilder("Recent tasks from ").append(debugTick - RECENT_TICKS).append('-').append(debugTick).append('{');
|
|
debugHead.debugTo(string);
|
|
return string.append('}').toString();
|
|
+ */
|
|
+ // Paper end
|
|
}
|
|
|
|
@Deprecated
|
|
--
|
|
2.18.0
|
|
|