Objective c 是否有办法检查NSAutoreleasePool';什么东西?

Objective c 是否有办法检查NSAutoreleasePool';什么东西?,objective-c,Objective C,只是想知道这是否可能,也许我可以检索当前存储在给定NSAutoreleasePool实例中的对象的NSSet 我查阅了苹果公司的参考资料,没有发现与这个问题相关的内容。不,没有。NSAutoreleasePool的实现细节是非常神奇的 您可以做的是创建自己的自动释放池,并以某种方式愚弄运行时,使其认为应该使用您的池而不是NSAutoreleasePool。但这样做只是为了尝试的刺激 但是,除了实验和学习之外,您不应该改变自动释放行为。否则我会找到你的。如果只是为了调试,您可以使用函数\u CFA

只是想知道这是否可能,也许我可以检索当前存储在给定
NSAutoreleasePool
实例中的对象的
NSSet


我查阅了苹果公司的参考资料,没有发现与这个问题相关的内容。

不,没有。
NSAutoreleasePool
的实现细节是非常神奇的

您可以做的是创建自己的自动释放池,并以某种方式愚弄运行时,使其认为应该使用您的池而不是
NSAutoreleasePool
。但这样做只是为了尝试的刺激


但是,除了实验和学习之外,您不应该改变自动释放行为。否则我会找到你的。如果只是为了调试,您可以使用函数\u CFAutoreleasePoolPrintPools()打印池的内容,如中所述。它从Mac OS X 10.6开始提供,而iOS可能从3.X开始提供


或者,类方法
[NSAutoreleasePool showPools]
执行相同的操作。

可能重复@Kenny。@Dave我想我会这样做的!:-)@戴夫,别担心——这都是实验性的,永远不会投入生产——我理解这其中的危险,谢谢!:P@Jacob我知道你会好起来的;这更多的是一个卫生部长对任何其他人的警告,他们碰巧认为我可能真的在认真地建议这一点。@Dave LOL。卫生部长的警告真的。@Dave这是我昨晚谈论的问题:噢,哇。这太棒了。事实上,这正是我想要的!:)是的,这很好-它可以打印池中当前对象的列表,但不能返回对象的集合:(@Jacob:pthread_getspecific(0x3e)可以检索存储对象的结构),但不能保证结构不会在不同平台之间更改,因为这是一些内部API。好吧,由于内容打印到了stderr,您可以重新打开流并从中解析以获得所有指针。您能提供一个例子吗?谢谢。嘿,伙计们-ShowPool在4.2中不推荐使用吗?我找不到任何解释它在文档中被视为已存在或曾经存在,而编译器找不到它。