From 423701d4d7c591baad17191be22f7f49470a0342 Mon Sep 17 00:00:00 2001 From: gnembon Date: Tue, 17 Dec 2019 11:58:35 -0400 Subject: [PATCH] Revert "threading testing" This reverts commit 9ba573af --- ...nager_scarpetThreadingProtectionMixin.java | 39 ------------------- 1 file changed, 39 deletions(-) delete mode 100644 src/main/java/carpet/mixins/ServerChunkManager_scarpetThreadingProtectionMixin.java diff --git a/src/main/java/carpet/mixins/ServerChunkManager_scarpetThreadingProtectionMixin.java b/src/main/java/carpet/mixins/ServerChunkManager_scarpetThreadingProtectionMixin.java deleted file mode 100644 index 897b53b7..00000000 --- a/src/main/java/carpet/mixins/ServerChunkManager_scarpetThreadingProtectionMixin.java +++ /dev/null @@ -1,39 +0,0 @@ -package carpet.mixins; - -import carpet.script.exception.InternalExpressionException; -import carpet.script.value.ThreadValue; -import net.minecraft.server.world.ServerChunkManager; -import net.minecraft.world.chunk.Chunk; -import net.minecraft.world.chunk.ChunkStatus; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.Redirect; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; - -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.Executor; -import java.util.function.Supplier; - -@Mixin(ServerChunkManager.class) -public class ServerChunkManager_scarpetThreadingProtectionMixin -{ - @Redirect(method = "getChunk(IILnet/minecraft/world/chunk/ChunkStatus;Z)Lnet/minecraft/world/chunk/Chunk;", at = @At( - value = "INVOKE", - target = "Ljava/util/concurrent/CompletableFuture;join()Ljava/lang/Object;", - ordinal = 0 - )) - private Object checkJoiningThreads(CompletableFuture completableFuture) - { - synchronized (ThreadValue.waitingTreads) - { - if (ThreadValue.waitingTreads.containsKey(Thread.currentThread())) - throw new InternalExpressionException("Cannot join/wait on world accessing thread"); - ThreadValue.waitingTreads.put(Thread.currentThread(), 1); - } - Chunk res = completableFuture.join(); - ThreadValue.waitingTreads.remove(Thread.currentThread()); - return res; - - } -}