Удалена ли сборка мусора в xcode 4? - PullRequest
9 голосов
/ 29 марта 2011

Я изучаю XCode и цель c, но книга, которую я читаю, использует более старую версию (3.2) XCode. В одной главе, полностью посвященной памяти и утечкам, говорится, что мне нужно включить сборку мусора через «Настройки проекта»> «Сборка». Тем не менее, я не могу найти настройки сбора мусора. Это было удалено или я просто скучаю по нему?

Ответы [ 6 ]

9 голосов
/ 29 марта 2011

В Xcode 4 по-прежнему есть сборщик мусора, все, что вам нужно сделать, это зайти в ваш проект (верхний вариант на панели навигации с большим значком проекта xcode).Выберите цель, которая должна быть просто именем вашего приложения, с иконкой приложения рядом с ней.Когда вы выбираете это, вверху появляется панель с различными параметрами, такими как сводка, информация, настройки сборки и т. Д. Нажмите «Настройки сборки» и введите «мусор» в поле поиска.Затем установите сборщик мусора на обязательный.

Одно очень важное замечание о GC состоит в том, что он официально объявлен устаревшим с Mac OS 10.8, что означает, что вам следует по возможности переходить код на ARC, поскольку GC может не быть внамного дольше.

Обновление: см. другие ответы для включения GC в текущих версиях Xcode.Как я уже говорил выше, вы должны перейти на ARC, если вы еще этого не сделали.

4 голосов
/ 26 сентября 2012

Начиная с XCode 4.4, флаг сборки сборки мусора определяется пользователем (см. Самый конец списка настроек сборки).

GCC_ENABLE_OBJC_GC supported

Допустимые настройки сборки:

  • не поддерживается : приложение не может загрузить код, требующий сборки мусора.Загружаемый пакет не может быть загружен приложением, которое требует сборки мусора.

  • поддерживается : приложение может загружать код, который поддерживает или требует сборки мусора.Загружаемый пакет может быть загружен приложением с любым уровнем поддержки сборки мусора.

  • обязательно : приложение может загружать только код, поддерживающий сборку мусора.Загружаемый пакет может быть загружен только приложением, которое поддерживает сборку мусора.

2 голосов
/ 29 марта 2011

Сборка мусора полностью поддерживается в Xcode 4. Сам по себе Xcode 4 является приложением GC'd.

GC также очень недоступен в iOS. Если вы пишете приложение для iPhone / iPad, вы не можете использовать GC.

1 голос
/ 05 июля 2012

Начиная с Xcode 4.3.3, единственная настройка, доступная для параметра «Сборка мусора Objective-C» в разделе «Компилятор Apple LLVM 3.1 - язык», Настройки сборки для целевого приложения = «Неподдерживаемый»

1 голос
/ 29 марта 2011

Xcode 3.2 все еще доступен для скачивания - фактически, 3.2.6 был выпущен в течение прошлой недели или двух, так что он не совсем "старый и сломанный".:-) Интерфейс Xcode 4 очень отличается, поэтому, учитывая ваш плотный график и необходимость начинать с нуля, вам может быть лучше использовать 3.2 на данный момент.Это, безусловно, облегчит использование имеющейся у вас книги.

1 голос
/ 29 марта 2011

Это сложная задача, но вы можете ее решить - вот отправная точка для размышления относительно генерации PDF:

iOS SDK - программно сгенерируйте файл PDF

Если вы обычно можете следить за тем, что там происходит, вы можете быть в порядке.

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