Вы наделены работой.Использование class_getInstanceSize()
даст вам размер экземпляра для одного объекта, но не для объектов, на которые ссылаются объекты.Каждая ссылка на объект будет считаться только как 4-байтовый указатель, а не как фактический размер экземпляра объекта, на который ссылаются.
Вы можете быть умным и использовать class_copyIvarList()
, пройти через ивар и спросить любой ивар, который является объектом дляэто также размер экземпляра, затем рекурсивно делайте то же самое для вашего суперкласса, пока вы не достигнете корневого класса.
Или вы можете просто запустить Instruments с шаблоном выделения памяти и измерить фактическое использование памяти в реальном времени.