Наилучшим из возможных способов является то, что потоки владеют объектами, необходимыми для того, чтобы поток закончил делать все, что он делает, вплоть до возможности прервать обработку и завершиться как можно быстрее.
Под не-GC это означает -retain
, что поток -release
s когда закончено. Для GC это просто жесткая ссылка на желаемый объект (ы).
Если есть какая-то длительная обработка, которая должна продолжаться и должна завершиться до закрытия документа, тогда перетащите лист с индикатором выполнения и оставьте документ модальным до сделано (и Aperture, и iPhoto делают именно это).