Memory fragmentation correction is an implementation detail. You should by no means be directly involved in this. However, if you are concerned that your objects will be moved without notifying your code, do not; an apple never moves objects - the end of the story. When a memory allocation is allocated, it is yours (even if an instance of the wireframe class occupies it) until it is freed. At the same time, from a scientific point of view, I see no reason why the iPhone should not use at least a similar strategy for MacOS, which has an excellent article here .
source share