Вероятно, это сбой, когда объект обычно будет автореализован. autorelease
означает «с задержкой выпуска», поэтому он будет выпущен: только позже. Поскольку объект не будет существовать позже, когда вы его вручную освободите, вы, скорее всего, потерпите крах из-за того, что среда выполнения отправит сообщение -release
на ваш выделенный объект.
Редактировать: Обратите внимание, что если у вас есть -retain
объектов, которые выходят на аутсорсинг, вам необходимо: -release
им: вы принимаете на себя ответственность.
Предположим, что (по какой-то причине) я * хочу * хочу, чтобы он был выпущен прямо сейчас. «[[Obj сохранить] релиз]« действительный вариант? – noamtm
Не совсем. В этом случае вы должны обернуть все это в @autoreleasepool {}, чтобы создать и уничтожить пул, в котором происходит автоматическое оповещение. –
согласитесь, оберните все это в @autoreleasepool –