Код: Выделить всё
nproc
32
< /code>
Поэтому я написал минимальную программу, чтобы проверить это: < /p>
import java.lang.management.*;
public class Test {
public static void main(String args[]) throws Exception {
OperatingSystemMXBean op = (OperatingSystemMXBean)ManagementFactory.getOperatingSystemMXBean();
System.err.println("A - CPUS: " + op.getAvailableProcessors());
System.err.println("B - CPUS: " + java.lang.Runtime.getRuntime().availableProcessors());
}
}
Код: Выделить всё
$ java -version && javac Test.java && java Test
openjdk version "11.0.8-internal" 2020-07-14
OpenJDK Runtime Environment (build 11.0.8-internal+0-adhoc..src)
OpenJDK 64-Bit Server VM (build 11.0.8-internal+0-adhoc..src, mixed mode)
A - CPUS: 1
B - CPUS: 1
$ java -version && javac Test.java && java Test
openjdk version "1.8.0_112"
OpenJDK Runtime Environment (Zulu 8.19.0.1-linux64) (build 1.8.0_112-b16)
OpenJDK 64-Bit Server VM (Zulu 8.19.0.1-linux64) (build 25.112-b16, mixed mode)
A - CPUS: 32
B - CPUS: 32
< /code>
Почему я получаю два разных числа для двух разных версий Java? Почему Java 11 выглядит неправильно?
Подробнее здесь: https://stackoverflow.com/questions/752 ... een-java-8