No se si esto os sirva, creo que lo obtuve de este foro, creo que si es problema de memoria se puede hacer lo que aqui se propone:"Un método para defragmentar la RAM es el siguiente:
void *mem = AllocMem(64 * 1024 * 1024);
FreeMem(mem);
El sistema operativo libera un bloque de 64 Mb volcando lo que tenga actualmente
en memoria al a disco (swap) si es necesario. Una vez hemos hecho esto podemos
liberar con el FreeMem la memoria que habiamos requerido, lo que nos dejara
un gran bloque de memoria fisica sin usar."