Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Bad_Alloc Windows
Forum - C/C++ - Bad_Alloc Windows - Pagina 2

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
lorenzo (Normal User)
Guru


Messaggi: 1178
Iscritto: 15/04/2008

Segnala al moderatore
Postato alle 10:44
Giovedì, 17/05/2012
no, quello di 5000 int era un test. Nel programma reale alloco dati di dimensioni diverse...ho diversi vettori e strutture...non si tratta di una sola lista.
Inoltre essendo realtime non deve soffrire della lentezza di una lista non sequenziale.

PM Quote
Avatar
lorenzo (Normal User)
Guru


Messaggi: 1178
Iscritto: 15/04/2008

Segnala al moderatore
Postato alle 21:47
Venerdì, 18/05/2012
Allora, ho risolto il problema in questo modo.

Ho utilizzato la funzione CreateHeap con dimensione 0(si ingrandisce in automatico quando necessario), modificando però anche il sorgente.

Ho notato infatti che, effettuando una vector::reserve piuttosto grande, la colonna "Dimensione Commit" del task manager aumentava di parecchio. Al crash del programma, quel valore arrivava addirittura a 2 GB, quando la ram effettivamente utilizzata era di 1GB scarso.

Effettuando una reserve più ridotta, sono riuscito a normalizzare anche il commit arrivando ad allocare la memoria che mi serviva.

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo