zjadanie pamięci

0

Mam nadzieję że to nie jest nietuzinkowy problem.
Pamięć procesu mojego programu nie zmienia się, ale całkowita pamięć Windowsa
jest zjadana, program zawiesza się po czasie od kilku godzin do kilku dni zależnie
od tego ile pamięci ma system komputerowy,
program napisany jest w Codegear RAD 2007 (c++)
problem testowałem na kilku komputerach
kod przetrząsnąłem kilka razy, Codeguard nie zgłasza żadnych przecieków
prog używa biblioteki SQLite

proszę o pomoc bo termin goni a mi ręce opadają

0

No to najprawdopodobniej program używa jakiejś biblioteki DLL, która ma wyciek. Może SQLite :>
Spróbuj jakoś wyizolować problem - tzn. wycinać stopniowo kod z programu aż zostanie Ci kilka linijek, które powodują ten efekt. Może spróbuj też ściągnąć nowszą/starszą wersję SQLite.

0

To jednak był nietuzinkowy problem,
ale rozwiązują go następujące linijki

    ULONG  HeapFragValue = 2;
    HeapSetInformation(GetProcessHeap(),
                       HeapCompatibilityInformation,
                       &HeapFragValue,
                       sizeof(HeapFragValue));

Low-fragmentation Heap
<url> http://msdn.microsoft.com/en-us/library/aa366750(VS.85).aspx# </url>

Pozdrawiam :)
liloslaw@@onet.eu

0

ad poprzedni post:
uwaga: LFHeap nie działa pod debugerem

1 użytkowników online, w tym zalogowanych: 0, gości: 1