2014-12-29 13 views
8

Sto eseguendo parte del mio codice C# su Mac con Xamarin Studio e ho ricevuto il seguente errore.Garbage Collector non è stato in grado di allocare 16384 byte di memoria per la sezione heap principale

Error :Garbage collector could not allocate 16384 bytes of memory for major heap section. 

ho provato a fissare un limite esplicito sulla heap gestito e correre con SGEN seguendo questo consiglio:
Avoid Mono Cryptic GC Error Messsage

export MONO_GC_PARAMS=max-heap-size=2g 
mono --gc=sgen MyProgram.exe 

Ma ho ancora lo stesso problema.
Potresti dirmi come risolvere questo problema?

+0

Sei su una macchina/build a 32 bit? –

+1

Difficile da aiutare senza un progetto completo per verificare cosa sta allocando memoria dove e come. –

+1

Penso che sia giusto che tu ci mostri di più del tuo codice come dice Yuri. –

risposta

1

Assicurarsi che non si utilizza Low Latency/sostenuta Low Latency modalità GC, causano questo tipo di problemi, non usare batch o (è vecchio credo), a meno che non si sa cosa si sta facendo . Si desidera attenersi alla modalità interattiva la maggior parte del tempo. Qui puoi leggere ulteriori informazioni sulle modalità di latenza: https://msdn.microsoft.com/en-us/library/bb384202(v=vs.110).aspx

Problemi correlati