On Xbox 360, XNA comes with the .NET Compact Framework which indeed includes a pared-down, non-generational GC (http://msdn.microsoft.com/en-us/library/bb203912.aspx). (On Windows though you get a full .NET framework.)
As a developer for Xbox 360, I found your best bet is to:
- monitor the amount of memory allocated (print out GC.GetTotalMemory(false))
- allocate everything during loading and force a GC when you're done loading stuff.
- ensure you're not creating any garbage at all during your main loop, which will prevent the GC from kicking in at all.
As a developer for Xbox 360, I found your best bet is to:
- monitor the amount of memory allocated (print out GC.GetTotalMemory(false))
- allocate everything during loading and force a GC when you're done loading stuff.
- ensure you're not creating any garbage at all during your main loop, which will prevent the GC from kicking in at all.