Skip to content

Instantly share code, notes, and snippets.

@amachang
Created March 12, 2012 03:18
Show Gist options
  • Save amachang/2019501 to your computer and use it in GitHub Desktop.
Save amachang/2019501 to your computer and use it in GitHub Desktop.
How to debug Retain Count and Autorelease Count on Objective-C
+ (NSString*) stringEncodedPercentWithString:(NSString*)source
{
NSString *encodedString = (NSString *)CFURLCreateStringByAddingPercentEscapes(NULL, (CFStringRef)source, NULL, (CFStringRef)@"!*'();:@&=+$,/?%#[]", kCFStringEncodingUTF8);
[encodedString autorelease];
// Show target's memory address.
NSLog(@"encodedString address = 0x%p", encodedString);
// Show target's autorelease count
[NSAutoReleasePool showPools];
// Show target's retain count
NSLog(@"encodedString retainCount = %ld", [encodedString retainCount]);
// break here
assert(false);
return encodedString;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment