This commit is contained in:
Sotr
2018-06-17 17:18:10 +08:00
parent a78ae42d9c
commit e8dfb64f42
2 changed files with 3 additions and 2 deletions

View File

@@ -4,6 +4,7 @@ import org.spigotmc.RestartCommand;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import io.akarin.api.internal.Akari; import io.akarin.api.internal.Akari;
import io.akarin.server.core.AkarinGlobalConfig; import io.akarin.server.core.AkarinGlobalConfig;
@@ -11,7 +12,7 @@ import io.akarin.server.core.AkarinGlobalConfig;
@Mixin(value = RestartCommand.class, remap = false) @Mixin(value = RestartCommand.class, remap = false)
public abstract class MixinRestartCommand { public abstract class MixinRestartCommand {
@Inject(method = "restart()V", at = @At("HEAD")) @Inject(method = "restart()V", at = @At("HEAD"))
private static void beforeRestart() { private static void beforeRestart(CallbackInfo ci) {
if (AkarinGlobalConfig.noResponseDoGC) { if (AkarinGlobalConfig.noResponseDoGC) {
Akari.logger.warn("Attempting to garbage collect, may takes a few seconds"); Akari.logger.warn("Attempting to garbage collect, may takes a few seconds");
System.runFinalization(); System.runFinalization();

View File

@@ -28,7 +28,7 @@ public abstract class OptimisticNetworkManager {
private static final QueuedPacket SIGNAL_PACKET = new QueuedPacket(null, null); private static final QueuedPacket SIGNAL_PACKET = new QueuedPacket(null, null);
@Overwrite @Overwrite // PAIL: trySendQueue
private boolean m() { private boolean m() {
if (this.channel != null && this.channel.isOpen()) { if (this.channel != null && this.channel.isOpen()) {
if (this.packets.isEmpty()) { // return if the packet queue is empty so that the write lock by Anti-Xray doesn't affect the vanilla performance at all if (this.packets.isEmpty()) { // return if the packet queue is empty so that the write lock by Anti-Xray doesn't affect the vanilla performance at all