Pożeracz ramu

Przed chwilą ktoś się mnie spytał, czy to normalne, że transport GG zżera 64MB pamięci
(pole VIRT na topie). No normalne to nie jest, ale sprawdziłem u siebie… odpaliłem top,
dałem u jabber i moim oczom ukazało się
913MB w polu VIRT procesu jggtrans. Hmmm…
chyba mamy mały wyciek… Tylko kiedy ja to zbadam i poprawię?

2 uwagi do wpisu “Pożeracz ramu

  1. Już dość dawno temu mój znajomy napisał prześliczną bibliotekę (o ile można to nazwać aż tak dużym słowem) o nazwie xmalloc. Jest o tyle zarąbczasta, że używasz xmalloc, xfree xrealloc etc. zamiast standardowych alokacji pamięci. Ona za Ciebie sprawdza, czy udało się jej zarezerwować pamięć i inne takie.

    Jednak prawdziwe cudo tej biblioteki ukazuje się kiedy kompilacja jest w trybie DEBUG. Odpowiednie zmienne środowiskowe wskazują na plik, który ma zapisywać logi rezerwacji i zwalniania pamięci… i potem prostą komendą, po zamknięciu programu widzisz gdzie i jaka pamięć została zarezerwowana i niezwolniona…

    Moim zdaniem pychota 🙂 Wanna?

    Polubienie

  2. Jasne, i będę pół kodu przerabiał. W tym nieswoje libxode i libgadu. To ja juz wolę Valgrinda, który żadnych modyfikacji w kodzie nie wymaga, a wycieki pamięci wykryje i zlokalizuje nawet w zamkniętej binarce. Tylko najpierw trzeba się zorientować _kiedy_ ta pamięć wycieka. Może znowu był jakiś pad serwerów GG?

    Polubienie

Co o tym sądzisz?

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Połączenie z %s