9
0
mirror of https://github.com/Winds-Studio/Leaf.git synced 2026-01-04 15:41:40 +00:00
Files
Leaf/leaf-server/paper-patches/features/0045-Faster-CraftServer-getworlds-list-creation.patch
Dreeam 3268a57db8 Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@6bb9dc6b Normalize and trim spaces in Player#performCommand (#12892)
PaperMC/Paper@840dd9e1 Fix dialog preconditions (#12895)
PaperMC/Paper@9ccc51df Fix legacy pearls forgetting owner on disconnect (#12884)
PaperMC/Paper@57c13137 Allow to change despawnInPeaceful (#12880)
PaperMC/Paper@a5763618  Add WorldDifficultyChangeEvent (#12471)
PaperMC/Paper@dbc367ba Keep non-container slots synced when in container view (#12881)
2025-07-27 16:36:16 +08:00

23 lines
1.1 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: HaHaWTH <102713261+HaHaWTH@users.noreply.github.com>
Date: Tue, 9 Nov 2077 00:00:00 +0800
Subject: [PATCH] Faster CraftServer#getworlds list creation
CraftServer#getWorlds/Bukkit#getWorlds is frequently used in plugins,
replacing ArrayList with Fastutil ObjectArrayList
brings about 40% performance improvement in benchmark.
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 4cb422feb0ef0344a5b56c5425da6c84878d424f..42645ea0f97df8e733001e7c3f4c4096ed6a5049 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -978,7 +978,7 @@ public final class CraftServer implements Server {
@Override
public List<World> getWorlds() {
- return new ArrayList<World>(this.worlds.values());
+ return new it.unimi.dsi.fastutil.objects.ObjectArrayList<World>(this.worlds.values()); // Leaf - Faster CraftServer#getWorlds list creation
}
@Override