web-dev-qa-db-fra.com

Comment identifier la taille de segment Java par défaut sous Windows

Je lance une application Eclipse sur ma machine. J'ai deux questions

  1. J'aimerais savoir comment vérifier la taille de segment de mémoire par défaut utilisée par JVM pour exécuter l'application. J'utilise une machine Windows pour exécuter l'application Java. J'ai essayé de vérifier la taille de tas par défaut de la manière suivante

ControlPanel ---> Programmes ---> JavaSetting -> JavaTab -> Bouton de vue ---> Fenêtre des paramètres JavaRuntimeEnvironment ---> Userstab -> Valeur sous RuntimeParameters

Mais dans mon système, aucun paramètre d'exécution n'est défini. Existe-t-il une commande que je peux exécuter via la commande Invite pour vérifier la taille de segment de mémoire par défaut sur ma machine? 

  1. Comment augmenter le paramètre de taille de tas et exécuter l'application de plug-in Eclipse à partir de la commande Invite. Par exemple, pour augmenter la taille du tas et exécuter le fichier jar, utilisez la commande ci-dessous Java -Xms64m -jar MyApp.jar. Je voudrais savoir comment définir des paramètres de tas et exécuter mon application Java qui est un fichier exe. J'ai essayé d'exécuter la commande ci-dessous, mais la commande Invite ne reconnaît pas la commande.

    Java -Xms512m iepsd.exe

iepsd.exe est mon application Java. 

10
vr3w3c9

Vous pouvez utiliser -XX:+PrintFlagsFinal pour imprimer une longue liste d'options internes sur la machine virtuelle Java une fois que tous les arguments et les valeurs par défaut de la ligne de commande ont été traités. L'option -Xms correspond à InitialHeapSize et l'option -Xmx à MaxHeapSize.

Pour rechercher la taille de segment maximale par défaut utilisée par la machine virtuelle Java sous Windows, exécutez:

javaw -XX:+PrintFlagsFinal | find "MaxHeapSize"

Pour trouver la taille de segment initiale par défaut, exécutez:

javaw -XX:+PrintFlagsFinal | find "InitialHeapSize"
19
pburka

Pour répondre à la requête ci-dessous de vr3w3c9

Question posée par vr3w3c9: Bonjour, Merci pour la réponse. J'ai essayé d'exécuter la commande javaw -XX:+PrintFlagsFinal | find "InitialHeapSize" ci-dessus dans l'invite de commande, la valeur ne s'affiche pas. Je reçois un message contextuel qui dit: 

n'a pas pu créer la machine virtuelle Java - vr3w3c9 27 sept. 13 à 4:54 

Réponse: Sous Windows, exécutez/ouvrez l'invite de commande (Processeur de commande Windows) en tant qu'administrateur et exécutez la commande que vous avez mentionnée. vous obtiendrez le résultat ci-dessous:

C:\windows\system32>javaw -XX:+PrintFlagsFinal | find "MaxHeapSize"

uintx MaxHeapSize                              := 2122317824      {product}

C:\windows\system32>javaw -XX:+PrintFlagsFinal | find "InitialHeapSize"

uintx InitialHeapSize                          := 132531136       {product}

Ici, la unité de MaxHeapSize et InitialHeapSize est octets .

2
user1784741

essayez ci-dessous la commande pour un résultat détaillé

Java -XX:+PrintFlagsFinal -version | findstr /i "HeapSize PermSize ThreadStackSize"

le résultat est 

C:\Users\amar.magar>Java -XX:+PrintFlagsFinal -version | findstr /i "HeapSize PermSize ThreadStackSize"
 intx CompilerThreadStackSize                   = 0                                   {pd product}
uintx ErgoHeapSizeLimit                         = 0                                   {product}
uintx HeapSizePerGCThread                       = 87241520                            {product}
uintx InitialHeapSize                          := 268435456                           {product}
uintx LargePageHeapSizeThreshold                = 134217728                           {product}
uintx MaxHeapSize                              := 4271898624                          {product}
 intx ThreadStackSize                           = 0                                   {pd product}
 intx VMThreadStackSize                         = 0                                   {pd product}

Java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
1
Amar Magar

Utilisez JConsole. Il est livré avec le JDK. Vous trouverez son exécutable dans le répertoire bin correspondant.

0
Aniket Thakur