diff --git a/connector/src/main/java/org/geysermc/connector/GeyserConnector.java b/connector/src/main/java/org/geysermc/connector/GeyserConnector.java index f7e252a3b..6cede858e 100644 --- a/connector/src/main/java/org/geysermc/connector/GeyserConnector.java +++ b/connector/src/main/java/org/geysermc/connector/GeyserConnector.java @@ -99,18 +99,14 @@ public class GeyserConnector implements Connector { long startupTime = System.currentTimeMillis(); // Metric - if(!(System.console() == null) && System.getProperty("os.name", "Windows 10").toLowerCase().contains("windows")) { + if (!(System.console() == null) && System.getProperty("os.name", "Windows 10").toLowerCase().contains("windows")) { AnsiConsole.systemInstall(); } instance = this; - this.generalThreadPool = Executors.newScheduledThreadPool(32); //TODO: Make configurable value this.logger = GeyserLogger.DEFAULT; - ConsoleCommandReader consoleReader = new ConsoleCommandReader(this); - consoleReader.startConsole(); - logger.info("******************************************"); logger.info(""); logger.info("Loading " + NAME + " vesion " + VERSION); @@ -126,6 +122,10 @@ public class GeyserConnector implements Connector { shutdown(); } + this.generalThreadPool = Executors.newScheduledThreadPool(config.getGeneralThreadPool()); + ConsoleCommandReader consoleReader = new ConsoleCommandReader(this); + consoleReader.startConsole(); + logger.setDebug(config.isDebugMode()); Toolbox.CACHED_PALLETE.array(); diff --git a/connector/src/main/java/org/geysermc/connector/configuration/GeyserConfiguration.java b/connector/src/main/java/org/geysermc/connector/configuration/GeyserConfiguration.java index d40137441..d90f25768 100644 --- a/connector/src/main/java/org/geysermc/connector/configuration/GeyserConfiguration.java +++ b/connector/src/main/java/org/geysermc/connector/configuration/GeyserConfiguration.java @@ -47,5 +47,8 @@ public class GeyserConfiguration { @JsonProperty("debug-mode") private boolean debugMode; + @JsonProperty("general-thread-pool") + private int generalThreadPool; + private MetricInfo metrics; } \ No newline at end of file diff --git a/connector/src/main/resources/config.yml b/connector/src/main/resources/config.yml index 8506b14c2..d2dff626c 100644 --- a/connector/src/main/resources/config.yml +++ b/connector/src/main/resources/config.yml @@ -46,6 +46,9 @@ max-players: 100 # If debug messages should be sent through console debug-mode: false +# Thread pool size +general-thread-pool: 32 + # bStats is a stat tracker that is entirely anonymous and tracks only basic information # about Geyser, such as how many people are online, how many servers are using Geyser, # what OS is being used, etc. You can learn more about bStats here: https://bstats.org/.