Fix patch "Faster redstone torch rapid clock removal" (#2014)
Tux pointed out the patch still has O(n^2) time complexity since the sublist class in arraylist does not override clear() from AbstractList, which uses a forward moving iterator to clear the list. Resolved by using a peek and poll from ArrayDeque. This patch also removes the useless WeakHashMap which holds the list (it mapped world->list) and replaces it with a field on World.
This commit is contained in:
@@ -11,7 +11,7 @@ floating in the air.
|
||||
This can replace many uses of BlockPhysicsEvent
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
||||
index 4531adc268..a7333de99a 100644
|
||||
index 34d7b9314..ab56086e1 100644
|
||||
--- a/src/main/java/net/minecraft/server/World.java
|
||||
+++ b/src/main/java/net/minecraft/server/World.java
|
||||
@@ -0,0 +0,0 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose
|
||||
|
||||
Reference in New Issue
Block a user