Galería de mapas mentales Mapa cerebral del algoritmo de recolección de basura
A continuación se presentan los recolectores de basura históricos y principales actuales, el recolector CMS, el recolector G1, el recolector ZGC, Serial, Serial Old, Parallel, Parallel Old y ParNew. ¡Date prisa y recopila las imágenes a continuación para aprender!
Editado a las 2021-07-20 18:06:18,Este es un mapa mental sobre una breve historia del tiempo. "Una breve historia del tiempo" es una obra de divulgación científica con una influencia de gran alcance. No sólo presenta los conceptos básicos de cosmología y relatividad, sino que también analiza los agujeros negros y la expansión. del universo. temas científicos de vanguardia como la inflación y la teoría de cuerdas.
¿Cuáles son los métodos de fijación de precios para los subcontratos de proyectos bajo el modelo de contratación general EPC? EPC (Ingeniería, Adquisiciones, Construcción) significa que el contratista general es responsable de todo el proceso de diseño, adquisición, construcción e instalación del proyecto, y es responsable de los servicios de operación de prueba.
Los puntos de conocimiento que los ingenieros de Java deben dominar en cada etapa se presentan en detalle y el conocimiento es completo, espero que pueda ser útil para todos.
Este es un mapa mental sobre una breve historia del tiempo. "Una breve historia del tiempo" es una obra de divulgación científica con una influencia de gran alcance. No sólo presenta los conceptos básicos de cosmología y relatividad, sino que también analiza los agujeros negros y la expansión. del universo. temas científicos de vanguardia como la inflación y la teoría de cuerdas.
¿Cuáles son los métodos de fijación de precios para los subcontratos de proyectos bajo el modelo de contratación general EPC? EPC (Ingeniería, Adquisiciones, Construcción) significa que el contratista general es responsable de todo el proceso de diseño, adquisición, construcción e instalación del proyecto, y es responsable de los servicios de operación de prueba.
Los puntos de conocimiento que los ingenieros de Java deben dominar en cada etapa se presentan en detalle y el conocimiento es completo, espero que pueda ser útil para todos.
recolector de basura
recopilador de CMS
Barrido de marcas simultáneo
Obtener el tiempo mínimo de pausa como objetivo del recolector de basura.
Algoritmo de recopilación: algoritmo de marca y barrido
Pasos de trabajo
marca inicial
STW, más rápido
marcado concurrente
Ejecutar junto con el hilo del usuario lleva mucho tiempo
reetiquetar
STW, más largo que el tiempo de marcado inicial,
Algoritmo de actualización incremental mediante método de etiquetado de tres colores
limpieza concurrente
Para los objetos no marcados, los objetos recién agregados se marcarán en negro.
Restablecimiento de simultaneidad
Restablecer los datos de la marca durante este proceso de GC
ventaja
colección concurrente
pausa baja
defecto
Sensible a los recursos de la CPU. En el proceso sin STW, competirá con los servicios por los recursos.
Hay basura flotando
El uso del algoritmo de marcar y barrer generará mucha fragmentación del espacio
Hay incertidumbre en el proceso de ejecución. Cuando la recolección de basura no se completa, si se activa nuevamente el gc completo, provocará una falla de concurrencia, STW y se utilizará Serial Old para la recolección de basura.
Colector G1
Agarra primero
Un recolector de basura para servidores, dirigido a máquinas equipadas con múltiples procesadores y grandes cantidades de memoria.
Divida el montón en múltiples regiones independientes de igual tamaño.
Generalmente, el montón se divide en 2048 partes en promedio.
Siguiendo utilizando el concepto de generaciones, una misma Región puede pertenecer a distintas generaciones en distintos momentos.
Coloque objetos grandes en enormes espacios separados.
Generalmente se considera que un objeto es grande si excede el 50% de la Región. Si el tamaño excede la Región, se almacena en una Región enorme continua.
Full Gc también recogerá objetos en esta zona.
Pasos de trabajo
marca inicial
STW, rápido
marcado concurrente
Igual que CMS
nota final
Igual que CMS
Cribado y reciclaje
Ordene el valor y el costo del reciclaje de cada región y desarrolle un plan de reciclaje basado en el tiempo de pausa del GC esperado por el usuario.
STW
Características
Paralelismo y concurrencia
Colección por generación
integración espacial
pausas predecibles
Clasificación de colecciones
gc
YoungGC no se activa cuando el área de Eden está llena. Primero calcule cuánto tiempo lleva reciclar el área de Eden. Si el tiempo es mucho menor que el tiempo de pausa esperado, aumente la Región de la generación joven.
MixtoGC
Se activa después de que la ocupación del montón de la generación anterior alcanza el valor establecido, todas las áreas de objetos jóvenes y parte de las antiguas y grandes se reciclan.
Si se descubre que no hay suficientes regiones vacías para transportar el objeto de copia, se activará un FullGC.
coleccionista ZGC
Objetivo
Admite montones de escala de terabytes
El tiempo máximo de pausa del GC no supera los 10 ms
Sentando las bases para futuras funciones de GC
En el peor de los casos, el rendimiento se redujo en un 15%
independientemente de la generación
Debido a la complejidad de la implementación, actualmente se implementa una versión de una sola generación y es posible que en el futuro se implemente una versión multigeneración.
Diseño de memoria basado en regiones
ParNuevo
Similar a Colector paralelo
Capacidad para trabajar con CMS.
Paralelo viejo
Versión multiproceso de Serial Old
El número predeterminado de subprocesos es el número de núcleos de CPU.
Aplicable a la vejez
Emparejado con un algoritmo de nueva generación.
Paralelo
Algoritmo de recopilación: algoritmo de clasificación de etiquetas
Paralelo
Versión multiproceso de Serial
El número predeterminado de subprocesos es el número de núcleos de CPU.
Adecuado para nueva generación.
Con algoritmo de vieja generación.
Serie antigua
Paralelo viejo
Algoritmo de recopilación: algoritmo de copia
Serie antigua
STW de un solo hilo
Aplicable a la vejez
El algoritmo de colocación de nueva generación.
De serie
ParNuevo
Paralelo
Recopilador alternativo para fallas de simultaneidad de CMS
Algoritmo de recopilación: algoritmo de clasificación de etiquetas
De serie
Hilo único, STW
Adecuado para nueva generación.
Con algoritmo de vieja generación.
Serie antigua
CMS
Algoritmo de recopilación: algoritmo de copia