Maison > Java > javaDidacticiel > le corps du texte

Comment la mémoire Java est-elle structurée et gérée ?

Mary-Kate Olsen
Libérer: 2024-11-11 20:43:03
original
844 Les gens l'ont consulté

How is Java Memory Structured and Managed?

Gestion de la mémoire en Java

L'allocation de mémoire de Java est divisée en deux sections principales : le tas et le non-tas. Le tas est la zone de données d'exécution à partir de laquelle la machine virtuelle Java (JVM) alloue de la mémoire pour les instances de classe et les tableaux. La mémoire non tas comprend la mémoire requise pour le traitement interne et l'optimisation de la JVM.

Mémoire tas

La mémoire tas est divisée en trois pools : Eden Space, Survivor Space et Tenured Generation ( Old Gen).

  • Eden Space : La mémoire est initialement allouée à la plupart des objets de l'Eden Space pool.
  • Espace Survivant :Les objets qui survivent à la collecte des ordures de l'Espace Eden sont déplacés vers l'Espace Survivant.
  • Génération Titulaire :Objets qui existent depuis un certain temps dans l'Espace Survivant sont déplacés vers l'Espace Titulaire. Génération.

Mémoire non tas

La mémoire non tas comprend deux pools principaux : la génération permanente et le cache de code.

  • Permanent Génération : Contient toutes les données réfléchissantes de la JVM elle-même, telles que la classe et la méthode objets.
  • Cache de code : Contient de la mémoire pour la compilation et le stockage du code natif.

Surveillance de l'utilisation de la mémoire

La surveillance et la gestion Java La console (JConsole) fournit une interface utilisateur graphique pour surveiller divers aspects d'une application Java, y compris l'utilisation de la mémoire. JConsole affiche l'utilisation de la mémoire des pools de tas et non tas mentionnés ci-dessus, permettant aux développeurs d'identifier les problèmes de mémoire potentiels.

Ressources supplémentaires

  • [Mémoire du tas dans Java](https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/fundamentals.html#memorymodel)
  • [Mémoire non tas dans Java](https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/fundamentals.html#noheapmemory)
  • [Utilisation de JConsole](https://docs. oracle.com/javase/8/docs/technotes/tools/share/jconsole.html)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal