Even more cleanup of mcutil patch

This commit is contained in:
Nassim Jahnke 2024-07-18 16:50:16 +02:00
parent 3c8a7fe1a4
commit a8db527449
No known key found for this signature in database
GPG key ID: EF6771C01F6EF02F
59 changed files with 282 additions and 1154 deletions

View file

@ -159,10 +159,10 @@ index 0000000000000000000000000000000000000000..3c1992e212a6d6f1db4d5b807b38d719
+ }
+}
diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30bfe61bd0 100644
index f1145585eed18be0aa5c795a50589103fdc9cc2f..02835e4f0a0b262af27acff0939c981cae728db4 100644
--- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
+++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
@@ -77,7 +77,7 @@ public class CraftScheduler implements BukkitScheduler {
@@ -76,7 +76,7 @@ public class CraftScheduler implements BukkitScheduler {
/**
* Main thread logic only
*/
@ -171,7 +171,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
new Comparator<CraftTask>() {
@Override
public int compare(final CraftTask o1, final CraftTask o2) {
@@ -94,12 +94,13 @@ public class CraftScheduler implements BukkitScheduler {
@@ -93,12 +93,13 @@ public class CraftScheduler implements BukkitScheduler {
/**
* These are tasks that are currently active. It's provided for 'viewing' the current state.
*/
@ -187,7 +187,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
private final Executor executor = Executors.newCachedThreadPool(new ThreadFactoryBuilder().setNameFormat("Craft Scheduler Thread - %d").build());
private CraftAsyncDebugger debugHead = new CraftAsyncDebugger(-1, null, null) {
@Override
@@ -108,12 +109,31 @@ public class CraftScheduler implements BukkitScheduler {
@@ -107,12 +108,31 @@ public class CraftScheduler implements BukkitScheduler {
}
};
private CraftAsyncDebugger debugTail = this.debugHead;
@ -219,7 +219,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
@Override
public int scheduleSyncDelayedTask(final Plugin plugin, final Runnable task) {
return this.scheduleSyncDelayedTask(plugin, task, 0L);
@@ -236,7 +256,7 @@ public class CraftScheduler implements BukkitScheduler {
@@ -229,7 +249,7 @@ public class CraftScheduler implements BukkitScheduler {
} else if (period < CraftTask.NO_REPEATING) {
period = CraftTask.NO_REPEATING;
}
@ -228,7 +228,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
}
@Override
@@ -252,6 +272,11 @@ public class CraftScheduler implements BukkitScheduler {
@@ -245,6 +265,11 @@ public class CraftScheduler implements BukkitScheduler {
if (taskId <= 0) {
return;
}
@ -240,7 +240,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
CraftTask task = this.runners.get(taskId);
if (task != null) {
task.cancel0();
@@ -294,6 +319,11 @@ public class CraftScheduler implements BukkitScheduler {
@@ -287,6 +312,11 @@ public class CraftScheduler implements BukkitScheduler {
@Override
public void cancelTasks(final Plugin plugin) {
Preconditions.checkArgument(plugin != null, "Cannot cancel tasks of null plugin");
@ -252,7 +252,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
final CraftTask task = new CraftTask(
new Runnable() {
@Override
@@ -333,6 +363,13 @@ public class CraftScheduler implements BukkitScheduler {
@@ -326,6 +356,13 @@ public class CraftScheduler implements BukkitScheduler {
@Override
public boolean isCurrentlyRunning(final int taskId) {
@ -266,7 +266,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
final CraftTask task = this.runners.get(taskId);
if (task == null) {
return false;
@@ -351,6 +388,11 @@ public class CraftScheduler implements BukkitScheduler {
@@ -344,6 +381,11 @@ public class CraftScheduler implements BukkitScheduler {
if (taskId <= 0) {
return false;
}
@ -278,7 +278,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
for (CraftTask task = this.head.getNext(); task != null; task = task.getNext()) {
if (task.getTaskId() == taskId) {
return task.getPeriod() >= CraftTask.NO_REPEATING; // The task will run
@@ -362,6 +404,12 @@ public class CraftScheduler implements BukkitScheduler {
@@ -355,6 +397,12 @@ public class CraftScheduler implements BukkitScheduler {
@Override
public List<BukkitWorker> getActiveWorkers() {
@ -291,7 +291,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
final ArrayList<BukkitWorker> workers = new ArrayList<BukkitWorker>();
for (final CraftTask taskObj : this.runners.values()) {
// Iterator will be a best-effort (may fail to grab very new values) if called from an async thread
@@ -399,6 +447,11 @@ public class CraftScheduler implements BukkitScheduler {
@@ -392,6 +440,11 @@ public class CraftScheduler implements BukkitScheduler {
pending.add(task);
}
}
@ -303,7 +303,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
return pending;
}
@@ -406,6 +459,11 @@ public class CraftScheduler implements BukkitScheduler {
@@ -399,6 +452,11 @@ public class CraftScheduler implements BukkitScheduler {
* This method is designed to never block or wait for locks; an immediate execution of all current tasks.
*/
public void mainThreadHeartbeat(final int currentTick) {
@ -315,7 +315,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
this.currentTick = currentTick;
final List<CraftTask> temp = this.temp;
this.parsePending();
@@ -445,7 +503,7 @@ public class CraftScheduler implements BukkitScheduler {
@@ -434,7 +492,7 @@ public class CraftScheduler implements BukkitScheduler {
this.parsePending();
} else {
// this.debugTail = this.debugTail.setNext(new CraftAsyncDebugger(currentTick + CraftScheduler.RECENT_TICKS, task.getOwner(), task.getTaskClass())); // Paper
@ -324,7 +324,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
// 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)
}
@@ -464,7 +522,7 @@ public class CraftScheduler implements BukkitScheduler {
@@ -453,7 +511,7 @@ public class CraftScheduler implements BukkitScheduler {
//this.debugHead = this.debugHead.getNextHead(currentTick); // Paper
}
@ -333,7 +333,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
final AtomicReference<CraftTask> tail = this.tail;
CraftTask tailTask = tail.get();
while (!tail.compareAndSet(tailTask, task)) {
@@ -473,7 +531,13 @@ public class CraftScheduler implements BukkitScheduler {
@@ -462,7 +520,13 @@ public class CraftScheduler implements BukkitScheduler {
tailTask.setNext(task);
}
@ -348,7 +348,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
task.setNextRun(this.currentTick + delay);
this.addTask(task);
return task;
@@ -496,8 +560,8 @@ public class CraftScheduler implements BukkitScheduler {
@@ -485,8 +549,8 @@ public class CraftScheduler implements BukkitScheduler {
return id;
}
@ -359,7 +359,7 @@ index af3997e47aff9c43dc5019f1b0267effe1df5205..c6ce8ed5fa73ee6221332083b3376b30
CraftTask head = this.head;
CraftTask task = head.getNext();
CraftTask lastTask = head;
@@ -516,7 +580,7 @@ public class CraftScheduler implements BukkitScheduler {
@@ -505,7 +569,7 @@ public class CraftScheduler implements BukkitScheduler {
task.setNext(null);
}
this.head = lastTask;