Option JVM-Xss-Que fait-elle exactement?

Il dit: ici - Xss est utilisé pour définir la taille de la pile", ce qui veut dire exactement? Quelqu'un pourrait-il m'aider à comprendre cela?

188
demandé sur Community 2011-02-11 13:22:46

4 réponses

chaque thread dans une application Java a son propre stack . La pile est utilisée pour conserver les adresses de retour, les arguments d'appel de fonction/méthode, etc. Ainsi, si un thread a tendance à traiter de grandes structures via des algorithmes récursifs, il peut avoir besoin d'une grande pile pour toutes ces adresses de retour et autres. Avec le Sun JVM, vous pouvez définir cette taille via ce paramètre.

225
répondu T.J. Crowder 2011-02-11 10:25:35

il fixe en effet la taille de la pile sur une JVM.

vous devez la toucher dans l'une de ces deux situations:

  • Stacoverflowerror (la taille de la cheminée est supérieure à la limite), augmenter la valeur
  • OutOfMemoryError: incapable de créer un nouveau fil natif (trop de fils, chaque fil a une grande pile), le diminuer.

le ce dernier vient généralement lorsque votre Xss est trop grand, alors vous devez équilibrer (tests!)

131
répondu Adam Adamaszek 2013-08-06 13:11:14

chaque thread a une pile qui est utilisée pour les variables locales et les valeurs internes. La taille de la pile limite la profondeur de vos appels. Généralement, ce n'est pas quelque chose que vous devez changer.

4
répondu Peter Lawrey 2011-02-11 10:24:55

si Je ne me trompe pas, c'est ce qui indique à la JVM combien d'appels successifs elle acceptera avant d'émettre une erreur de stackoverflow. Pas quelque chose que vous voulez changer en général.

3
répondu Kellindil 2014-05-07 09:14:14