[mono-android] Mono crashing at System.MonoType.GetProperties call

Jonathan Pryor jonp at xamarin.com
Thu Jan 19 15:21:58 UTC 2012


On Jan 18, 2012, at 8:46 AM, devbuzz wrote:
> So if a thread is in the middle of deserializing a large object graph - GC shouldn't touch that right?

Correct.

> Also is the GC process "timer aware"; presumably it is fairly circumspect about what it marks for cleaning up with respect to thread code in between timer ticks?

I'm not sure what what a "timer aware" GC would be. When the GC runs is based on various heuristics based on current (known) memory use; the fewer objects you allocate, the less often the GC runs. Note that Mono's GC doesn't know how much memory the Dalvik GC is referencing, so the "known" memory use is inaccurate, occasionally requiring that you call GC.Collect() to prompt a GC.

If there are time periods when you don't want the GC to run, you should find a time period when you do want it to run, and call it there.

 - Jon



More information about the Monodroid mailing list