Bellek sızıntısı yaşadığın ve çözemediğin örnek bir kodunu paylaşırsan onun üzerinden birkaç öneride bulunabiliriz belki.
C de bildiğin üzeri bellek yönetimi kullanıcıya bırakılır. Eğer malloc ile bir bellek allocate edip bunu free ile serbest bırakmazsan bellek sızıntısı dediğimiz olay gerçekleşir. Yüksek seviyeli diller bu işi Garbage Collector adı verilen bir yöntemle kendi çapında çözüyor. C++ da ise kendimiz RAII paradigmasını kullanarak birtakım GC işlerini halledebiliyoruz.
Programlar diskten okunup belleğe map edilir, yani bir programı çalıştırmak için işletim sistemi bunu belleğe yüklüyor. Program bellek üzerinde kabaca iki bölümden oluşur bunlar stack ve heap'dir. Stack bölümünde fonksiyonlar ve değişkenler tutulur, heap üzerinde ise dinamik bellek tahsisiyle üretilen değişken ve fonksiyonlar tutulur.@Dynamics yani garbage collectorumuzu kendimiz kontrol ediyorum anladığım kadarıyla ve bildiğiniz gibi değişkenler bellekte tutuluyor functionlarda mı orada tutuluyor.
Bu sitenin çalışmasını sağlamak için gerekli çerezleri ve deneyiminizi iyileştirmek için isteğe bağlı çerezleri kullanıyoruz.