Original Post
I hear about watching for memory fragmentation in many discussions of dynamic memory, but don''t know when to recognize it is even happening. It has always been glazed on, but never discussed.
1. Is it even an issue nowadays with 256MB of RAM becoming the norm?
2. Does the C++ standard library exacerbate fragmentation through its heavier reliance on new/delete (as compared to C)? Do the default allocators for STL help things at all? I guess I''m wondering if I should be stingy about reusing std::string''s.
3. How do I know when it happens? How long does it take to finish defragmenting the RAM? (also I wonder how it compares to time spent garbage collecting)
4. What sorts of apps are more prone to it? The obvious answer is "apps that use dynamic memory" but this isn''t always the case (games use a lot of memory, but can allocate everything they need up front and release it in a fairly orderly fashion).