Byte battre Wuhan recruter 2.000 personnes, des fabricants offrent, vous court de ce Java sec! | Programme de travail

[NDLR] or RPSC, trois d'argent et quatre saisons de recrutement, et l'épidémie n'affectera pas trop. Selon la propagande officielle de mobiliser octets, la Division a décidé d'élargir l'échelle de recrutement cette année à Wuhan, fournissant près de 2000 emplois, à promouvoir l'emploi des talents locaux. En outre apparu personnes battant octet d'entrée en ligne à distance, pas à la société de recevoir des nouvelles de l'ordinateur portable. Rassurez-vous, ce n'est pas la publicité, juste pour illustrer, l'épidémie de développement imbattable des entreprises chinoises, mais ne bloque pas la demande de la Chine pour le travail. Et si vous êtes une entrevue pour l'emploi maker Java, cet article devrait probablement être votre « côté par. »

Auteur | _ Chen haha

Zebian | Hu Weiwei

Produit | RPSC (ID: CSDNnews)

Dans cet article, nous examinerons la collecte des ordures Java, et l'importance de ses travaux.

La définition de la collecte des ordures Java

Java processus de collecte des déchets est un programme Java assure la gestion automatique de la mémoire. les programmes Java compilés en bytecode, Java Virtual Machine peut (appelée JVM) pour fonctionner. Lorsque le programme Java exécuté sur la machine virtuelle Java, il va créer des objets sur le tas, qui est dédié à la partie de la mémoire du programme. En fin de compte, il ne sera plus besoin de certains objets. Garbage collector pour trouver ces objets inutilisés et les supprimer pour libérer de la mémoire.

Comment le travail de collecte des ordures Java

Java garbage collector est un processus automatique. Les programmeurs ne doivent pas marquer explicitement l'objet à supprimer. Collecte des ordures ménagères dans la machine virtuelle Java dans la réalisation. Chaque collecte des ordures JVM peut être atteint, mais il est bon. La seule exigence est qu'il est conforme à la spécification JVM. Bien qu'il existe de nombreux JVM, mais HotSpot d'Oracle est de loin le plus commun. Il offre une options de collecte des ordures puissantes et sophistiquées.

Bien optimisé HotSpot ayant une pluralité de collecteurs d'ordures pour divers cas d'utilisation, mais tous les éboueurs suivre le même procédé de base. La première étape, la reconnaissance d'objets et non référencé marqués comme la collecte des déchets. La deuxième étape, supprimer les objets marqués. (Facultatif) peut être comprimée mémoire après une récupération de place pour supprimer l'objet, de sorte que les objets restant dans des blocs contigus au segment de début. processus de compression afin de le rendre plus facile pour la mémoire allouée après le bloc de mémoire allouée objet existant au nouvel objet.

Tous garbage collector HotSpot ont réalisé une politique de collecte des ordures par génération d'objets d'âge. Le principe de base de la collecte des ordures de génération est que la plupart des objets sont de courte durée, et seront bientôt ordures collectées après sa création.

Heap divisé en trois parties:

La jeune génération: les objets nouvellement créés a commencé dans la jeune génération. La jeune génération subdivisé dans l'espace Eden Survivor et tout l'espace, tous les nouveaux objets commencent à fonctionner dans l'espace Eden, après quoi la fin d'un cycle de collecte des ordures, l'objet est retiré de l'Eden. Lorsque l'objet est collecté à partir de la jeune génération, qui est un événement de collecte des déchets secondaires.

L'ancienne génération: objets à long terme migrent tôt ou tard de la génération plus âgée à la jeune génération. Lorsque l'objet de la collecte des ordures de la génération précédente, qui est un événement de collecte des ordures majeurs.

Permanents générés: métadonnées (par exemple, des classes et des méthodes) stockées dans une génération permanente. Plus en classe d'utilisation peuvent être collectées à partir d'une poubelle générationnelle permanente.

Lors d'un événement de collecte des ordures complète, au nom de tous les objets utilisés ne soient nettoyés.

Il y a quatre éboueur HotSpot:

Série: Tous série d'événements de collecte des ordures sont effectuées dans un thread. La compression est effectuée après chaque collecte des ordures.

Parallèle: une pluralité de fils secondaires pour la collecte des déchets. collecte des ordures monothread pour la compression de style ancien et grand. De plus, en parallèle à l'aide de variables anciennes plusieurs threads principale collecte des ordures et la compression ancienne génération.

Le CMS (marque concurrente Scan): En utilisant le même algorithme en parallèle, une pluralité de fils secondaires pour la collecte des déchets. Grande collecte des ordures est multi-thread, comme Old parallèle, mais les processus d'application CMS en cours d'exécution en même temps, afin de minimiser l'événement "Stop the World" (c.-à arrêter l'application lorsque le garbage collector est en cours d'exécution). Aucune compression est effectuée.

G1 (priorité Garbage): le dernier garbage collector est conçu pour remplacer la CMS. Il est comme CMS parallèle et simultanée, mais par rapport à éboueur plus, cela fonctionne tout à fait différent.

Les avantages de la collecte des ordures Java

Collecte des ordures Java le plus grand avantage est qu'il peut gérer automatiquement les objets inutilisés supprimés ou des objets inaccessibles à la libération de ressources mémoire importantes. Utiliser un langage sans la collecte des déchets (comme C et C ++) les programmeurs de travail doivent mettre en uvre la gestion de la mémoire manuelle dans son code.

Malgré le travail supplémentaire, mais certains programmeurs favorisent encore la gestion de la mémoire manuelle est meilleure que la collecte des ordures, principalement pour des raisons de contrôle et de performance. Bien que le débat sur la méthode de gestion de la mémoire continue, mais la collecte des ordures est maintenant standard pour de nombreux composants de langage de programmation populaire. Pour les programmes ont un impact négatif sur les performances du garbage collector, Java fournit un certain nombre d'options pour régler le garbage collector pour améliorer son efficacité.

Java Garbage Collection Meilleures pratiques

Pour de nombreuses applications simples, collecte des ordures Java n'est pas une chose consciente programmeurs doivent prendre en compte. Cependant, pour les programmeurs Java veulent améliorer les compétences, les travaux de collecte des ordures Java et comprendre comment les régler est très important.

En plus du mécanisme de base pour la collecte des ordures, l'un des points les plus importants pour comprendre la collecte des ordures en Java est que ce n'est pas la collecte des ordures déterministe ne peut pas prédire lors de l'exécution. Le code peut être inclus dans une invite à utiliser des méthodes System.gc ou Runtime.gc exécuter le collecteur d'ordures, mais ils ne peuvent pas garantir le garbage collector sera effectivement exécuté.

La meilleure façon de régler le drapeau de la collecte des ordures Java est installé sur la machine virtuelle Java. Drapeau peut régler le collecteur des déchets (par exemple, série, G1, etc.) à utiliser, la taille du tas initiale et maximale, la taille (par exemple, la jeune génération, ancienne génération) segment de pile, et ainsi de suite. La nature de la demande d'ajustement est bon de définir les lignes directrices initiales. Par exemple, garbage collector parallèle à haute efficacité, mais souvent conduit à « arrêter le monde » événement, pour le rendre plus approprié pour le traitement back-end, dans ce cas, il peut être une collection d'ordures longue pause.

D'autre part, garbage collector CMS est conçu pour minimiser la pause, le rendant idéal pour la réactivité est d'importantes applications de l'interface graphique. En changeant la pile ou de la taille tas et en utilisant l'outil de mesure jstat comme l'efficacité de collecte des ordures à complète de réglage fin supplémentaire.

Lien original:

https://blog.csdn.net/qq_39390545/article/details/104457216

Siri compose automatiquement le 911, le site Google construit le dépistage, les ingrédients pharmaceutiques de test IBM, l'action internationale dans la lutte contre le SRAS
Précédent
Quand votre entreprise a-t-elle besoin de l'intelligence artificielle? | Des millions de personnes apprennent l'IA
Prochain
Détection biométrique, comparaison de visages ... Comment FaceID fait-il face à la cécité? | Des millions de personnes apprennent l'IA
Un chercheur principal de Microsoft explique le DNN efficace basé sur la convolution de groupe entrelacé | Million People Learning AI
Liu Tieyan parle de l'apprentissage automatique: trop avec des vagues, nous devons refléter | millions de personnes apprennent l'IA
Remarqué? Paris dans ces petits détails réconfortants
Les champs et les rues à la satisfaction des gens de construction « Red propriété »
Power "quatre" critique, le service a repris la production complexe! Liaocheng Académie des sciences agricoles en action
percée cruciale, lutte Yong-classe | Tsui villes de district ont flashé coups durs, réels, de nouvelles tactiques
Pour assurer la sécurité des enseignants et des étudiants! conditions scolaires de tels travaux de vérification effectués dans le Shandong
Reconnus longévité « bonnes habitudes » Venez voir ce que vous faites pour quelques-uns?
Le printemps est arrivé, la peau de démangeaisons à plusieurs reprises, l'enflure et la douleur, est-il un moyen peut se débarrasser des ruches?
Vous consommez, Changsha County payer! attente de la brigade 5000000 texte pour vous de recevoir des coupons
famille Lin Tong de quatre avec les communautés « Contagion » a passé la plus belle puissance « à la maison »