I am calling in applicationDidFinishLaunching:
self performSelectorInBackground:@selector(performReachabilityCheck) withObject:nil;
Here is the performReachabilityCheck
-(void)performReachabilityCheck{
internetReach = Reachability reachabilityForInternetConnection retain;
internetReach startNotifer;
self updateInterfaceWithReachability: internetReach;
}
Do I need to create an auto-release pool? If so, how can I do that in this context?
UPDATE:
Is this the correct way to implement the auto-release pool?
NSAutoreleasePool * pool = NSAutoreleasePool alloc init;
self performSelectorInBackground:@selector(performReachabilityCheck) withObject:nil;
pool release; pool = nil;
,
Yes, anytime you perform a selector on a background thread, you need to wrap it in an AutoreleasePool. The classes you’re using may create autoreleased objects. If you run this while connected to the debugger, you should see a lot of messages about “No autorelease pool in place, just leaking”.