J'ai eu un problème il y a quelques temps en utilisant Solaris que je voulais limiter le nombre de processeurs que Java pouvait voir (cela a été retourné par Runtime.getRuntime().availableProcessors()
) Je pensais l'avoir et on m'a donné quelques infos pour Linux sur la foi. on m'a dit que l'utilisation taskset
limiterait le nombre de processeurs que java utiliserait (ce qui est vrai, il le fait), mais il ne change pas ce qui est retourné par availableProcessors()
.Limite availableProcessors
J'ai cherché un peu pour trouver un moyen de changer cette valeur de retour availableProcessors()
et je n'ai pas réussi à trouver quelque chose. Est-ce que quelqu'un sait un moyen de le limiter ou pourquoi taskset -c 0,1 java -cp ./ Test
ne fonctionnerait pas
Test.java
public class Test {
public static void main(String args[]) {
System.out.println(Runtime.getRuntime().availableProcessors());
}
}
Vive