From 3d74804bea090fb288ed9902f2bc6dcb0b8283f2 Mon Sep 17 00:00:00 2001 From: Sotr Date: Fri, 22 Mar 2019 00:40:48 +0800 Subject: [PATCH] Remove unnecessary AsyncCatcher callers The AsyncCatcher will check threads and cost extra performance, and since it only works for bad plugins, just removed unnecessary callers that won't save data to disk to save these performance. --- src/main/java/net/minecraft/server/Block.java | 4 ++-- src/main/java/net/minecraft/server/EntityLiving.java | 2 +- src/main/java/net/minecraft/server/EntityTracker.java | 4 ++-- .../java/net/minecraft/server/EntityTrackerEntry.java | 4 ++-- src/main/java/net/minecraft/server/MCUtil.java | 4 ++-- src/main/java/net/minecraft/server/World.java | 8 ++++---- src/main/java/org/bukkit/craftbukkit/CraftServer.java | 2 +- src/main/java/org/bukkit/craftbukkit/CraftWorld.java | 8 ++++---- .../craftbukkit/scoreboard/CraftScoreboardManager.java | 2 +- 9 files changed, 19 insertions(+), 19 deletions(-) diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java index 44706465d..dd677c351 100644 --- a/src/main/java/net/minecraft/server/Block.java +++ b/src/main/java/net/minecraft/server/Block.java @@ -406,12 +406,12 @@ public class Block implements IMaterial { @Deprecated public void onPlace(IBlockData iblockdata, World world, BlockPosition blockposition, IBlockData iblockdata1) { - org.spigotmc.AsyncCatcher.catchOp( "block onPlace"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "block onPlace"); // Spigot // Akarin } @Deprecated public void remove(IBlockData iblockdata, World world, BlockPosition blockposition, IBlockData iblockdata1, boolean flag) { - org.spigotmc.AsyncCatcher.catchOp( "block remove"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "block remove"); // Spigot // Akarin } public int a(IBlockData iblockdata, Random random) { diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java index 721a681d6..9f56b750f 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -750,7 +750,7 @@ public abstract class EntityLiving extends Entity { } public boolean addEffect(MobEffect mobeffect, EntityPotionEffectEvent.Cause cause) { - org.spigotmc.AsyncCatcher.catchOp( "effect add"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "effect add"); // Spigot // Akarin if (isTickingEffects) { effectsToProcess.add(new ProcessableEffect(mobeffect, cause)); return true; diff --git a/src/main/java/net/minecraft/server/EntityTracker.java b/src/main/java/net/minecraft/server/EntityTracker.java index 3854ae976..a75ebf472 100644 --- a/src/main/java/net/minecraft/server/EntityTracker.java +++ b/src/main/java/net/minecraft/server/EntityTracker.java @@ -105,7 +105,7 @@ public class EntityTracker { } public void addEntity(Entity entity, int originalRange, int j, boolean flag) { // Spigot - org.spigotmc.AsyncCatcher.catchOp( "entity track"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "entity track"); // Spigot // Akarin int i = org.spigotmc.TrackingRange.getEntityTrackingRange(entity, originalRange); // Spigot try { if (this.trackedEntities.b(entity.getId())) { @@ -144,7 +144,7 @@ public class EntityTracker { } public void untrackEntity(Entity entity) { - org.spigotmc.AsyncCatcher.catchOp( "entity untrack"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "entity untrack"); // Spigot // Akarin if (entity instanceof EntityPlayer) { EntityPlayer entityplayer = (EntityPlayer) entity; Iterator iterator = this.c.iterator(); diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java index 2b8501143..82132f368 100644 --- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java +++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java @@ -356,7 +356,7 @@ public class EntityTrackerEntry { } public void updatePlayer(EntityPlayer entityplayer) { - org.spigotmc.AsyncCatcher.catchOp( "player tracker update"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "player tracker update"); // Spigot // Akarin if (entityplayer != this.tracker) { if (this.c(entityplayer)) { if (!this.trackedPlayers.contains(entityplayer) && (this.e(entityplayer) || this.tracker.attachedToPlayer)) { @@ -642,7 +642,7 @@ public class EntityTrackerEntry { } public void clear(EntityPlayer entityplayer) { - org.spigotmc.AsyncCatcher.catchOp( "player tracker clear"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "player tracker clear"); // Spigot // Akarin if (this.trackedPlayers.contains(entityplayer)) { this.trackedPlayers.remove(entityplayer); this.tracker.c(entityplayer); diff --git a/src/main/java/net/minecraft/server/MCUtil.java b/src/main/java/net/minecraft/server/MCUtil.java index c4572716b..3583723aa 100644 --- a/src/main/java/net/minecraft/server/MCUtil.java +++ b/src/main/java/net/minecraft/server/MCUtil.java @@ -118,7 +118,7 @@ public final class MCUtil { * @return */ public static void ensureMain(String reason, Runnable run) { - if (AsyncCatcher.enabled && !ThreadAssertion.isMainThread() && Thread.currentThread() != MinecraftServer.getServer().primaryThread) { // Akarin + if (/*AsyncCatcher.enabled*/ && !ThreadAssertion.isMainThread() && Thread.currentThread() != MinecraftServer.getServer().primaryThread) { // Akarin if (reason != null) { new IllegalStateException("Asynchronous " + reason + "!").printStackTrace(); } @@ -143,7 +143,7 @@ public final class MCUtil { * @return */ public static T ensureMain(String reason, Supplier run) { - if (AsyncCatcher.enabled && !ThreadAssertion.isMainThread() && Thread.currentThread() != MinecraftServer.getServer().primaryThread) { // Akarin + if (/*AsyncCatcher.enabled &&*/ !ThreadAssertion.isMainThread() && Thread.currentThread() != MinecraftServer.getServer().primaryThread) { // Akarin if (reason != null) { new IllegalStateException("Asynchronous " + reason + "! Blocking thread until it returns ").printStackTrace(); } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java index fd08c8a92..0b0d3aac8 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -1088,7 +1088,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc return regionLimited.addEntity(entity, spawnReason); } // Paper end - org.spigotmc.AsyncCatcher.catchOp( "entity add"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "entity add"); // Spigot // Akarin if (entity.valid) { MinecraftServer.LOGGER.error("Attempted Double World add on " + entity, new Throwable()); return true; } // Paper if (!CraftEventFactory.doEntityAddEventCalling(this, entity, spawnReason)) { return false; @@ -1149,7 +1149,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc } public void kill(Entity entity) { - org.spigotmc.AsyncCatcher.catchOp( "entity kill"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "entity kill"); // Spigot // Akarin if (entity.isVehicle()) { entity.ejectPassengers(); } @@ -1190,7 +1190,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc } public void removeEntity(Entity entity) { - org.spigotmc.AsyncCatcher.catchOp( "entity remove"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "entity remove"); // Spigot // Akarin entity.b(false); entity.die(); if (entity instanceof EntityHuman) { @@ -2542,7 +2542,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc public void addChunkEntities(Stream collection) { a(collection); } // Paper - OBFHELPER public void a(Stream stream) { - org.spigotmc.AsyncCatcher.catchOp( "entity world add"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "entity world add"); // Spigot // Akarin stream.forEach((entity) -> { if (entity == null || entity.dead || entity.valid) { // Paper - prevent adding already added or dead entities return; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java index caccb7bdc..5b12fd20b 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -707,7 +707,7 @@ public final class CraftServer implements Server { public boolean dispatchCommand(CommandSender sender, String commandLine) { Validate.notNull(sender, "Sender cannot be null"); Validate.notNull(commandLine, "CommandLine cannot be null"); - org.spigotmc.AsyncCatcher.catchOp( "command dispatch" ); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "command dispatch" ); // Spigot // Akarin // Paper Start if (!org.spigotmc.AsyncCatcher.shuttingDown && !ThreadAssertion.isMainThread() && !Bukkit.isPrimaryThread()) { // Akarin diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java index e6a016f24..b1ed79247 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -223,7 +223,7 @@ public class CraftWorld implements World { } public boolean unloadChunkRequest(int x, int z, boolean safe) { - org.spigotmc.AsyncCatcher.catchOp( "chunk unload"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "chunk unload"); // Spigot // Akarin if (safe && isChunkInUse(x, z)) { return false; } @@ -237,7 +237,7 @@ public class CraftWorld implements World { } public boolean unloadChunk(int x, int z, boolean save, boolean safe) { - org.spigotmc.AsyncCatcher.catchOp( "chunk unload" ); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "chunk unload" ); // Spigot // Akarin if (isChunkInUse(x, z)) { return false; } @@ -258,7 +258,7 @@ public class CraftWorld implements World { } public boolean regenerateChunk(int x, int z) { - org.spigotmc.AsyncCatcher.catchOp( "chunk regenerate" ); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "chunk regenerate" ); // Spigot // Akarin if (!unloadChunk0(x, z, false)) { return false; } @@ -304,7 +304,7 @@ public class CraftWorld implements World { } public boolean loadChunk(int x, int z, boolean generate) { - org.spigotmc.AsyncCatcher.catchOp( "chunk load"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "chunk load"); // Spigot // Akarin chunkLoadCount++; return world.getChunkProvider().getChunkAt(x, z, true, generate || isChunkGenerated(x, z)) != null; // Paper } diff --git a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java index 9cce899f5..bc3c14871 100644 --- a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java +++ b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java @@ -43,7 +43,7 @@ public final class CraftScoreboardManager implements ScoreboardManager { } public CraftScoreboard getNewScoreboard() { - org.spigotmc.AsyncCatcher.catchOp( "scoreboard creation"); // Spigot + //org.spigotmc.AsyncCatcher.catchOp( "scoreboard creation"); // Spigot // Akarin CraftScoreboard scoreboard = new CraftScoreboard(new ScoreboardServer(server)); scoreboards.add(scoreboard); return scoreboard;