@@ -349,32 +349,34 @@ index 8b5293b0c696ef21d0101493ffa41b60bf0bc86b..6ba713606dafbf5ec19d22b10170571e
349349
350350diff --git a/src/main/java/net/sparklypower/sparklypaper/ServerLevelTickExecutorThreadFactory.java b/src/main/java/net/sparklypower/sparklypaper/ServerLevelTickExecutorThreadFactory.java
351351new file mode 100644
352- index 0000000000000000000000000000000000000000..d26d82cb4d120083efc424092a324e5e70122105
352+ index 0000000000000000000000000000000000000000..1f1c80af81603fcf03c16d6820b49350616bdbb1
353353--- /dev/null
354354+++ b/src/main/java/net/sparklypower/sparklypaper/ServerLevelTickExecutorThreadFactory.java
355- @@ -0,0 +1,22 @@
355+ @@ -0,0 +1,24 @@
356356+ package net.sparklypower.sparklypaper;
357357+
358358+ import ca.spottedleaf.moonrise.common.util.TickThread;
359359+
360360+ import java.util.concurrent.ThreadFactory;
361+ + import java.util.concurrent.atomic.AtomicInteger;
361362+
362363+ public class ServerLevelTickExecutorThreadFactory implements ThreadFactory {
364+ +
365+ + private final AtomicInteger counter = new AtomicInteger();
366+ +
363367+ @Override
364368+ public Thread newThread(Runnable r) {
365- + TickThread.ServerLevelTickThread tickThread = new TickThread.ServerLevelTickThread(r, "serverlevel-tick-worker" );
369+ + String name = "Server Level Thread " + counter.getAndIncrement( );
366370+
367- + if (tickThread.isDaemon()) {
368- + tickThread.setDaemon(false);
369- + }
371+ + TickThread.ServerLevelTickThread tickThread = new TickThread.ServerLevelTickThread(r, name);
370372+
371- + if (tickThread.getPriority() != Thread.MAX_PRIORITY) {
372- + tickThread.setPriority(Thread.MAX_PRIORITY);
373- + }
373+ + tickThread.setDaemon(false);
374+ + tickThread.setPriority(Thread.MAX_PRIORITY);
374375+
375376+ return tickThread;
376377+ }
377378+ }
379+ \ No newline at end of file
378380diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
379381index aa0a61d7f3128543b698647663fa4a9af2a8255a..0faa70d74dee3dd093b77de48dfb6c3564ff3578 100644
380382--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -614,7 +616,7 @@ index 6809f9dcf8510c714145d99d250eb69f98d9bf27..e51d306fafad0591562ee3b7da56889d
614616 this.getNMS().tick(level, this.position, level.random);
615617 }
616618@@ -737,6 +802,11 @@ public class CraftBlock implements Block {
617-
619+
618620 @Override
619621 public void fluidTick() {
620622+ // SparklyPaper start - parallel world ticking
@@ -624,7 +626,7 @@ index 6809f9dcf8510c714145d99d250eb69f98d9bf27..e51d306fafad0591562ee3b7da56889d
624626+ // SparklyPaper end - parallel world ticking
625627 this.getNMSFluid().tick(this.world.getMinecraftWorld(), this.position, this.getNMS());
626628 }
627-
629+
628630diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java
629631index 5d4faad9df4824cfd61abfd4df011c006f114424..d1227c670db2dbe1816d78be51796c43e99a4d9b 100644
630632--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java
0 commit comments