La principale recherche de cet article est le contenu pertinent de l'explication détaillée des paramètres de drapeau dans JVM, qui est introduit comme suit.
-Xmx3550m: définissez la mémoire maximale disponible de JVM à 3550m.
-XMS3550M: définissez la mémoire disponible initiale de JVM à 3550m.
-XMN2G: Réglez la taille de la jeune génération sur 2G.
-XSS128K: Réglez la taille de la pile de chaque fil à 128k
-Xx: NewSize = 4: Réglez la taille de la jeune génération à 4
-Xx: newratio = 4: définissez le rapport de la jeune génération (y compris Eden et deux zones de survivant) à l'ancienne génération (à l'exclusion de la génération persistante) à 4, puis le rapport de la jeune génération à l'ancienne génération est de 1: 4, et la jeune génération représente 1/5 de la pile complète de la pile est
-Xx: Survivorratio = 4: définit le rapport de taille entre la zone d'Eden et la zone de survivant de la jeune génération. Situé à 4, le rapport entre les deux zones de survivant et une zone d'Eden est de 2: 4, et une zone de survivante représente 1/6 de toute la jeune génération.
-Xx: maxpermSize = 16m: définissez la taille de génération persistante à 16 m.
-Xx: PretenuresizethReshold = n, des objets supérieurs à n sont placés directement dans la vieillesse
-Xx: maxtrenuringthreshold = 0: Réglez l'âge maximum des ordures. Si elle est définie sur 0, l'objet Young Generation ne passera pas dans la zone de survivante et entrera directement dans l'ancienne génération.
-Xx: + useParalleLoldGC: Configurez la méthode de collecte des ordures à l'ancienne pour la collection parallèle.
Taille du tas entier = Taille de la jeune génération + Old Generation Taille + Taille de génération persistante.
-Xx: + usageSerialgc: Définissez le collecteur en série
-Xx: + useParallelGC: Définissez le collecteur parallèle
-Xx: + useParalledloldgc: Configurez le collecteur parallèle à l'ancienne génération
-Xx: + USECOnCarksweepgc: Configurez le collecteur simultané
-Xx: + printgc
-Xx: + printgcdetails
-Xx: + printgctimestamps
-Xloggc: nom de fichier
-Xx: parallelgctHreads = n: définissez le nombre de processeurs utilisés lors de la collecte du collecteur parallèle. Le nombre de threads collectés en parallèle.
-Xx: maxgcpausemillis = n: définissez le temps de pause maximum pour la collection parallèle
-Xx: gctimeratio = n: définissez le pourcentage du temps de collecte des ordures pour programmer l'heure d'exécution. La formule est 1 / (1 + n)
-Xx: + cmsincrementalmode: réglé sur le mode incrémentiel. Il convient aux situations de processeur unique.
-Xx: parallelgctHreads = n: Définissez le nombre de processeurs utilisés lorsque la jeune génération du collecteur simultanée est une collection parallèle. Le nombre de threads utilisés dans la collection parallèle.
Supposons qu'il existe un fichier nommé TestMem.java
javac testmem.java java -verbose: gc -xms20m -xmx20m -xmn10m -xx: + printgcdetails -xx: Survivorratio = 8 testmem
-XMS20M: La taille initiale du tas Java en JVM est de 20 m. (Y compris la nouvelle génération et les personnes âgées)
-XMX20M: La taille maximale du tas Java dans JVM est de 20 m, ce qui signifie qu'il n'est pas évolutif. (Y compris la nouvelle génération et les personnes âgées)
-Xmn10m: La taille de la nouvelle génération est de 10 m
-Xx: + printgcdetails: imprimez des informations GC détaillées
-XX: Survivorratio = 8: Le rapport spatial d'une zone d'entende à une zone de survivante dans la nouvelle génération est de 8: 1, alors le rapport de deux zones de survivant dans une zone d'Eden est de 2: 8, et une zone de survivante représente 1/10 de toute la jeune génération entière
Après avoir connu les informations sur le drapeau ci-dessus, nous pouvons obtenir les informations suivantes:
La taille totale du tas Java est de 20m = 20 * 1024K = 20480K
La taille de la génération ceponyme: 10m = 10 * 1024k = 10240k
Eden Space: 10240K * 8/10 = 8192K
De l'espace: 10240K * 1/10 = 1024K
à l'espace: 10240K * 1/10 = 1024K
Taille de la vieillesse: 20m - 10m = 10m = 10240k
Ce qui précède est toute l'explication détaillée des paramètres du drapeau dans JVM dans cet article, j'espère que cela sera utile à tout le monde. Les amis intéressés peuvent continuer à se référer à d'autres sujets connexes sur ce site. S'il y a des lacunes, veuillez laisser un message pour le signaler. Merci vos amis pour votre soutien pour ce site!