Существуют ли какие-либо известные методы или функции в SDL, которые могут вызывать утечки памяти?
Я заметил для своей программы, что время от времени 0,1 МБ памяти продолжало отводиться на использование памяти программы (т. е. дополнительные '.4 МБ были добавлены ровно за 3 минуты).
Я прокомментировал все свои функции рисования / блитинга поверхности;в значительной степени просто изолировал основной игровой цикл от структуры событий и переворачивания экрана, например:
// .. Intilize
char quit = 0;
Uint8* keystate = NULL;
SDL_Event hEvent;
while (!quit)
{
// .. Code
while (SDL_PollEvents(&hVvent)) {
keystate = SDL_GetKeystate(NULL);
// .. Event processing
}
// .. More Code
if (SDL_Flip(screen) == -1)
return 1
SDL_Delay(1);
}
// .. Cleanup