Есть ли способ проверить объекты NSAutoreleasePool?
Просто интересно, если это вообще возможно, может быть, я мог бы получить NSSet
объектов, которые в настоящее время хранятся в данном NSAutoreleasePool
пример?
Я просматривал Apple NSAutoreleasePool
Ссылка и не нашли много, имеющих отношение к этому вопросу.
2 ответа
Если цель только для отладки, вы можете использовать функцию _CFAutoreleasePoolPrintPools()
распечатать содержимое пула, как описано в TN2124. Он доступен начиная с Mac OS X 10.6 и iOS, может быть, начиная с 3.x.
В качестве альтернативы, метод класса [NSAutoreleasePool showPools]
выполняет то же действие.
Нет, нет Детали реализации NSAutoreleasePool
Глубокая черная магия.
Вместо этого вы можете создать свой собственный пул автоматического выпуска и каким-то образом обмануть среду выполнения, заставив ее думать, что ей следует использовать ваш пул вместо NSAutoreleasePool
, Но делайте это только для того, чтобы испытать это на себе.