Если вы тестируете прибор Leaks с предоставленным вами кодом, неудивительно, что он не может обнаружить никаких проблем.
- Утечки имеют интервал снимка по умолчанию 10 секунд. Но ваша программа не будет работать даже в течение 10 секунд.
- Вы размещаете в области точки входа приложения. «t» действует (если не освобождено) до тех пор, пока не выйдет главный. Так что ОС все равно вернет память.
- И самое главное: ваш код не содержит утечек. Это будет утечка, если вы "потеряли ссылку" на т. (например, с помощью другого t = malloc () или присвоения t какой-либо другой переменной)
Если вы хотите увидеть утечки в действии, создайте приложение какао по умолчанию, добавьте переменную экземпляра «test» в ваш AppDelegate и вставьте следующий код в реализацию.
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
test = malloc(50);
test = malloc(20);
}