__NSAutoreleaseNoPool(): Object 0x4c70ec0 of class UISegmentedControl autoreleased with no pool in place - just leaking
__NSAutoreleaseNoPool(): Object 0x4c70ec0 of class UISegmentedControl autoreleased with no pool in place - just leaking
__NSAutoreleaseNoPool(): Object 0x4c70ec0 of class UISegmentedControl autoreleased with no pool in place - just leaking
__NSAutoreleaseNoPool(): Object 0x4c70ec0 of class UISegmentedControl autoreleased with no pool in place - just leaking
__NSAutoreleaseNoPool(): Object 0x4c70ec0 of class UISegmentedControl autoreleased with no pool in place - just leaking
这是我在控制台中收到的警告。虽然它不会造成崩溃,但似乎是一些内存管理问题。
可能出现什么问题?
我没有自动释放我的分段控制。
答案 0 :(得分:7)
使用多线程时,通常会出现此问题。 如果您使用线程,则应为该线程创建自动释放池
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; //Code.... [pool release];
答案 1 :(得分:0)
如果你在一个不是主线程的线程中使用UISegmentedControl,就像@Martin所说的那样,这是不安全的。
UIKit Framework Reference - Introduction
注意:在大多数情况下,UIKit类 应该只用于 应用程序的主要线程。这是 对于派生的类尤其如此 来自UIResponder或涉及 操纵应用程序的用户 以任何方式接口。