Skip to content

Instantly share code, notes, and snippets.

View eternalstorms's full-sized avatar
Yoink, ScreenFloat, Transloader, Glimpses, flickery, SiriMote

Matthias Gansrigler eternalstorms

Yoink, ScreenFloat, Transloader, Glimpses, flickery, SiriMote
View GitHub Profile
@eternalstorms
eternalstorms / activity monitor memory usage stackoverflow.txt
Created September 10, 2012 16:34
Activity Monitor memory usage is inaccurate
Monitoring your memory usage with Activity Monitor is pretty unreliable. First, which memory field are you watching (Virtual Private Memory, Real Private Memory, Real Shared Memory, or Real Memory)?
Second, when your code makes an allocation request, that typically goes, directly or indirectly, to the malloc routines. The malloc routines try to satisfy your request from the memory that it already has. If it can't then it requests more from the system. When you free memory, it goes back to malloc. Malloc does not necessarily return it to the system. It may keep it to more quickly satisfy future requests. So, you may not see your process's memory usage go down, at least not all the way, even if your program is releasing everything it allocated.
The proper way to check that your program is managing memory correctly is to use Instruments with the Leaks and Allocations tools.
(source: http://stackoverflow.com/questions/10218314/cocoa-memory-issue-memory-doesnt-get-reclaimed-when-objects-are-removed-from-a )
@eternalstorms
eternalstorms / DateString.m
Created September 5, 2012 10:50
String from an NSDate in the form of "2 months ago"
- (NSString *)relativeDateStringFromDate:(NSDate *)date
{
NSDate *now = [NSDate date];
if ([now laterDate:date] == date)
return nil; //dates in the future are not supported
NSInteger years = [now yearsSinceDate:date];
NSInteger months = [now monthsSinceDate:date];
NSInteger weeks = [now weeksSinceDate:date];
NSInteger days = [now daysSinceDate:date];
NSInteger hours = [now hoursSinceDate:date];
@eternalstorms
eternalstorms / Mac App Store Promo Code Link.txt
Created September 4, 2012 16:25
Mac App Store Links (Refund, Promo Code Redemption)
@eternalstorms
eternalstorms / PrettyDate.m
Created August 29, 2012 14:25
return a well-formatted string from an NSDate, presentable to the user
- (NSString *)stringForDate:(NSDate *)date
withLocale:(NSLocale *)locale
timeZone:(NSTimeZone *)timeZone
dateFormat:(NSString *)dateFormat
dateStyle:(NSDateFormatterStyle)style
{
if (dateFormat == nil)
dateFormat = @"yyyy-MM-dd HH:mm:ss Z";
if (locale == nil)
locale = [NSLocale currentLocale];