Özet - Bellek iç yapıları
- Node.js kursu
- Uzman
- Ders 24/47
- 5 dk
heap, GC ve snapshot'ı birleştirerek bir memory profiler yazarsın.
Özet - Bellek iç yapıları
Bu grupta Node.js bellek iç yapılarını gördük: heap/stack ayrımı, generational GC, mark-sweep, memory leak ve heap snapshot. Her biri belleğin nasıl yönetildiğini ve sızıntıların nasıl bulunduğunu ele alır.
Heap/stack: nesneler heap'te, ilkel değerler stack'te. Generational GC: young ve old kuşaklarla sağ kalanları terfi eder. Mark-sweep: köklerden ulaşılabileni işaretler, gerisini süpürür. Memory leak: önbellek sınırını aşan büyüme. Heap snapshot: nesnelerin ad ve boyut listesi. Son derste tümünü bir raporda birleştireceğiz.
Rapor fonksiyonu
Son görev bellek kavramlarını tek bir raporda birleştirir. memoryReport() fonksiyonu bölge, gc ve sızdırma bilgisini ' | ' ile ayırarak döndürür. Çıktı: stack+heap | generational | detected.
Bu rapor, belleğin üç yönünü özetler: bölge (stack+heap), çöp toplama biçimi (generational) ve sızıntı durumu (detected). Fonksiyon içinde her parçayı bir değişkene koyar, sonra + ile birleştirirsin. regions.join('+') bölgeleri birleştirir. Bu, öğrendiklerini konsolda görmeni sağlar; gerçek bellek yönetimini çalıştırmanın belirsizliği olmadan yapısını modellemiş olursun.
Uygulama Bellek raporu yaz
function memoryReport() yaz. const regions = ['stack', 'heap'] tanımla. const gc = 'generational' tanımla. const leak = 'detected' tanımla. return regions.join('+') + ' | ' + gc + ' | ' + leak ile döndür. console.log(memoryReport()) ile yazdır.
Başlangıç kodu
// memoryReport fonksiyonu yaz
// bölge, gc ve sızdırma bilgisini birleştir
// 'stack+heap | generational | detected' döndürsün
// çağır ve yazdır
// buraya yazÖrnek çözüm
function memoryReport() {
const regions = ['stack', 'heap'];
const gc = 'generational';
const leak = 'detected';
return regions.join('+') + ' | ' + gc + ' | ' + leak;
}
console.log(memoryReport());Beklenen çıktı
stack+heap | generational | detected
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Mark-sweep hangi kuşak için kullanılır?
- Young
- Old Doğru cevap
- Stack
- Yok
Açıklama: Mark-sweep old kuşak için kullanılır.
2 Kavramı rolüne eşle
| Kavram | Anlamı |
|---|---|
Stack |
İlkel değerler |
Heap |
Nesneler |
Generational GC |
Young/old kuşaklar |
Mark-sweep |
Ulaşılabileni işaretler |