I have a shared instance (a simple data controller) and in my project I don't use ARC.
static ECOMDataController *sharedInstanse;
@implementation ECOMDataController
+(ECOMDataController *)sharedInstance
{
    return sharedInstanse;
}
-(id)init
{
    [self checkAndCreateDataFileIfExist];
    [self readAppFile];
    if (sharedInstanse)
        NSLog(@"The shared instance was created already.");
    sharedInstanse = self;
    return self;
}
And I use it in the other methods like this:
- (void)viewDidLoad
{
    [super viewDidLoad];
    dataController = [ECOMDataController sharedInstance];
    [dataController readAppFile];
    [[self tableView] reloadData];
}
As I can see from the leaks instrument - I have a memory leak here - what should I do to release the data controller? And where is better to do that?
 
    