Время жизни объектов Objective-C контролируется вручную (при условии, что вы не используете сборщик мусора или ARC). Вы не должны спрашивать, существуют ли они на протяжении всей программы - вместо этого вы должны убедиться, что каждая ссылка на объект, независимо от того, где он находится (основной поток, фоновый поток), должным образом сохранена. См. основные правила управления памятью .
В частности, если вы создаете объект с [[MyClass alloc] init]
, теперь у вас есть ссылка на этот объект (за который вы в конечном итоге ответственны за освобождение). Если вы затем запустите новый поток и дадите этому потоку ссылку на ваш объект, этот поток должен вызвать [obj retain]
, чтобы гарантировать, что объект будет продолжать существовать, и [obj release]
, когда это будет сделано с объектом.