Skip to content

Instantly share code, notes, and snippets.

@mikeash
Created March 19, 2009 14:49
Show Gist options
  • Save mikeash/81851 to your computer and use it in GitHub Desktop.
Save mikeash/81851 to your computer and use it in GitHub Desktop.
+ (id)sharedWhatever
{
static Whatever *whatever = nil;
if( !whatever )
{
Whatever *newWhatever = [[self alloc] init];
if( !OSAtomicCompareAndSwapPtrBarrier( nil, newWhatever, (void *)&whatever ) )
{
[newWhatever release];
}
}
return whatever;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment