Table of Contents
Garbage 수집 알고리즘은 프로그래밍 언어의 메모리를 관리하는 데 필수적입니다. 그들은 자동으로 누출 및 최적화 성능을 방지하고 무료 사용 메모리를 식별하고 있습니다. 다른 알고리즘은 응용 프로그램의 필요 및 환경에 따라 효율성이 다릅니다.
마크 앤 스윕 알고리즘
마크 앤 스윕 알고리즘은 두 단계로 작동 : 도달 가능한 개체를 표시하고 비고되지 않은 것을 청소합니다. 간단하고 효과적이지만 실행 중에 일시적인 시스템에서 성능에 영향을 미치는 영향을 일으킬 수 있습니다.
관련 상품
참조 계산은 각 객체에 대한 참조의 수를 유지합니다. 카운트가 0으로 떨어지면, 객체는 즉시 할당됩니다. 이 방법은 효율적이지만, 메모리 누출에 납 할 수있는 순환 참조와 투쟁입니다.
세대 쓰레기 수집
세대 쓰레기 수집은 개체를 자신의 수명에 따라 생성물로 나눕니다. 젊은 개체는 더 자주 수집되며 효율성을 향상시킵니다. 이 접근법은 Java 및 JavaScript 엔진과 같은 현대 가상 기계에서 일반적입니다.
Practical 예제
웹 응용 프로그램을 고려하여 많은 임시 개체를 파괴합니다. 생성 컬렉션을 사용하여 일시 중지 시간을 줄이고 응답을 향상시킵니다. 대조적으로 긴 개체가있는 시스템은 철저한 정리를 위해 Mark-and-sweep에서 혜택을 누릴 수 있습니다.