NSAutoreleaseNoPool():NSConcreteMutableData 类的对象 0x66ad9d0 自动释放,没有适当的池 - 只是泄漏
Posted
技术标签:
【中文标题】NSAutoreleaseNoPool():NSConcreteMutableData 类的对象 0x66ad9d0 自动释放,没有适当的池 - 只是泄漏【英文标题】:NSAutoreleaseNoPool(): Object 0x66ad9d0 of class NSConcreteMutableData autoreleased with no pool in place - just leaking 【发布时间】:2011-05-03 12:03:27 【问题描述】:我正在尝试在我的项目中执行线程操作。事情进展顺利,但我的 NSLOG 上收到了NSAutoreleaseNoPool(): Object 0x66ad9d0 of class NSConcreteMutableData autoreleased with no pool in place - just leaking
pring。
我的代码是..
NSAutoreleasePool *MyPool = [[NSAutoreleasePool alloc] init];
[NSThread detachNewThreadSelector:@selector(insertSyncRec:) toTarget:self withObject:dict];
[MyPool drain]; // [MyPool release]; too
我的日志信息是:
2011-05-03 17:29:51.262 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xd5034d0 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.262 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xd504190 of class NSCFString autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.263 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xd503930 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.264 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xd5066a0 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.265 MLead[7240:7e13] *** __NSAutoreleaseNoPool(): Object 0xd4180e0 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.266 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xd507260 of class NSCFString autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.266 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xd506a50 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.269 MLead[7240:8407] *** __NSAutoreleaseNoPool(): Object 0xd507af0 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.271 MLead[7240:8407] *** __NSAutoreleaseNoPool(): Object 0xd419a20 of class NSCFString autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.271 MLead[7240:8407] *** __NSAutoreleaseNoPool(): Object 0xd4061f0 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.267 MLead[7240:7e13] *** __NSAutoreleaseNoPool(): Object 0xd418dc0 of class NSCFString autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.272 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xa3f5650 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.272 MLead[7240:7e13] *** __NSAutoreleaseNoPool(): Object 0xd4185c0 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.272 MLead[7240:8407] *** __NSAutoreleaseNoPool(): Object 0xd5068c0 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.281 MLead[7240:8407] *** __NSAutoreleaseNoPool(): Object 0xd508f70 of class NSCFString autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.282 MLead[7240:8407] *** __NSAutoreleaseNoPool(): Object 0xd504b10 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.272 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xd41a470 of class NSCFString autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.283 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xd41ba60 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.284 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xd418eb0 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.284 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xd41bc40 of class NSCFString autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.273 MLead[7240:7e13] *** __NSAutoreleaseNoPool(): Object 0xd506db0 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.284 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xd41b540 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.285 MLead[7240:8513] *** __NSAutoreleaseNoPool(): Object 0xd5086e0 of class __NSCFData autoreleased with no pool in place - just leaking
2011-05-03 17:29:51.286 MLead[7240:8407] *** __NSAutoreleaseNoPool(): Object 0xd507c30 of class __NSCFData autoreleased with no pool in place - just leaking
等等..
我错过了什么.. 经过大量谷歌搜索后,我只发现创建一个新池..但没有工作..
提前谢谢..
【问题讨论】:
【参考方案1】:不应该在线程本身内创建池吗?
【讨论】:
【参考方案2】:我也有同样的问题,而不是将任务附加到新线程尝试在同一个线程中。 [self insertSyncRec:dict];
我解决了我这样做的问题
【讨论】:
以上是关于NSAutoreleaseNoPool():NSConcreteMutableData 类的对象 0x66ad9d0 自动释放,没有适当的池 - 只是泄漏的主要内容,如果未能解决你的问题,请参考以下文章
NSAutoreleaseNoPool():NSConcreteMutableData 类的对象 0x66ad9d0 自动释放,没有适当的池 - 只是泄漏
*** __NSAutoreleaseNoPool():NSPathStore2 类的对象 0x926d620 自动释放,没有适当的池 - 只是泄漏
值 YpartialUnification 不是 scala.tools.nsc.Settings 的成员
无法获取 cpu pod 指标,k8s-containerd-containerd-shim-runsc-v1-gvisor