From 3fb67e45d88f210caac02520d0dd8236a307c0f2 Mon Sep 17 00:00:00 2001 From: Guillaume Nodet Date: Wed, 21 Oct 2020 14:10:35 +0200 Subject: [PATCH] Leave 1 processor unused on the daemon by default, fixes #111 --- .../main/java/org/jboss/fuse/mvnd/client/DefaultClient.java | 3 ++- daemon/src/main/java/org/apache/maven/cli/DaemonMavenCli.java | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/client/src/main/java/org/jboss/fuse/mvnd/client/DefaultClient.java b/client/src/main/java/org/jboss/fuse/mvnd/client/DefaultClient.java index 9678fd7dc..36fad9829 100644 --- a/client/src/main/java/org/jboss/fuse/mvnd/client/DefaultClient.java +++ b/client/src/main/java/org/jboss/fuse/mvnd/client/DefaultClient.java @@ -234,7 +234,8 @@ public ExecutionResult execute(ClientOutput output, List argv) { static void setDefaultArgs(List args) { if (args.stream().noneMatch(arg -> arg.startsWith("-T") || arg.equals("--threads"))) { - args.add("-T1C"); + int procs = Runtime.getRuntime().availableProcessors() - 1; + args.add("-T" + procs); } if (args.stream().noneMatch(arg -> arg.startsWith("-b") || arg.equals("--builder"))) { args.add("-bsmart"); diff --git a/daemon/src/main/java/org/apache/maven/cli/DaemonMavenCli.java b/daemon/src/main/java/org/apache/maven/cli/DaemonMavenCli.java index 812992813..d4be9a1fc 100644 --- a/daemon/src/main/java/org/apache/maven/cli/DaemonMavenCli.java +++ b/daemon/src/main/java/org/apache/maven/cli/DaemonMavenCli.java @@ -1006,7 +1006,7 @@ private void populateRequest(CliRequest cliRequest) { if (threadConfiguration.contains("C")) { request.setDegreeOfConcurrency(calculateDegreeOfConcurrencyWithCoreMultiplier(threadConfiguration)); } else { - request.setDegreeOfConcurrency(Integer.valueOf(threadConfiguration)); + request.setDegreeOfConcurrency(Integer.parseInt(threadConfiguration)); } } @@ -1020,7 +1020,7 @@ private void populateRequest(CliRequest cliRequest) { int calculateDegreeOfConcurrencyWithCoreMultiplier(String threadConfiguration) { int procs = Runtime.getRuntime().availableProcessors(); - return (int) (Float.valueOf(threadConfiguration.replace("C", "")) * procs); + return (int) (Float.parseFloat(threadConfiguration.replace("C", "")) * procs); } static File resolveFile(File file, String workingDirectory) {