4 ms·
The concurrent GC in the latest .Net still requires pausing (though the time is less), because the heap still requires compacting, and no code can run while tha
by hacker_9 9y ago
The concurrent GC in the latest .Net still requires pausing (though the time is less), because the heap still requires compacting, and no code can run while that operation happens.
Invoking the GC constantly on a frame by frame basis can quickly lead to heap fragmentation, resulting in pausing, because that is considered 'working against' the GC (both stop the world and concurrent). This is where custom solutions, such as pooling, should be used to mitigate these issues.