Mac OSX сохраняет релиз сильным и т. Д. - PullRequest
1 голос
/ 16 декабря 2011

Я из мира iOS, теперь с ARC и "сильным".

Я ориентируюсь на OSX 10.6 и выше, использует ли Mac ARC и сборку мусора? Может кто-нибудь указать мне руководство по этим вопросам, касающееся 10.6 или выше?

Ответы [ 2 ]

3 голосов
/ 16 декабря 2011

ARC и сильный доступны в OS X 10.7 и 10.6. Если вы используете 10.6, вы не можете использовать обнуление слабых ссылок ARC (они не обнуляются).

GC решает ту же проблему, что и ARC, но решает ее с другой стороны. Вы можете использовать его, начиная с 10.5. GC будет работать, даже если у вас есть циклы сохранения. Однако GC имеет несколько непредсказуемые результаты во время выполнения (вы точно не знаете, когда ваша проблема будет приостановлена ​​для цикла сбора мусора).

Если вы используете ARC на iOS и вам нравится избегать сохранения циклов там, и вам не нужно обнулять слабые ссылки, проще сделать это на OSX, чем изучать нюансы GC. Если использование ARC зависит от обнуления слабых ссылок (например, для прерывания сохраняемых циклов), либо не поддерживайте 10.6, либо используйте GC.

Примечания к выпуску Apple на http://developer.apple.com/library/mac/#releasenotes/MacOSX/WhatsNewInOSX/Articles/MacOSX10_7.html содержат некоторые подробности.

0 голосов
/ 16 декабря 2011

Начиная с Mac OS X 10.5 Leopard, в Mac OS X доступна сборка мусора.

ARC - это функция компилятора. Runtime по-прежнему управляет памятью посредством retains / release, но все это скрыто от разработчика.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...