Как отключить индексирование в Xcode 4?

Не так давно я обновил Xcode до версии 4. Эта новая версия потратила много времени на индексацию проекта (он довольно большой). Вот почему я хотел бы отключить индексацию. Поиск в справке Xcode и в Интернете не дал результатов.


person FarMiaplacidus    schedule 22.03.2011    source источник


Ответы (7)


Откройте окно терминала и вставьте эту команду:

defaults write com.apple.dt.XCode IDEIndexDisable 1

Вы потеряете некоторые функции (автозаполнение, переход к определению, некоторые помощники не будут работать должным образом). Но вы вернете оперативную память и процессор.

Для моего проекта Xcode перешел от использования 2 гигабайт к нескольким сотням МБ. (который мне очень нужно было скомпилировать;))

person Dave    schedule 04.08.2011
comment
Это решило проблему и для меня. В проекте среднего размера однажды XCode 4 решил съесть 10 ГБ виртуальной памяти, у меня только 4 ГБ физической, и сидел там, крутясь в течение 5 минут. Каждый раз, когда я пытался снова запустить XCode, он делал то же самое. Удалил файл рабочей области, все равно то же самое. Отключение индексации с помощью этой команды решило проблему. - person clemahieu; 18.08.2011
comment
Ух ты. Потеря возможности показать быструю справку, щелкнув имя класса или метода, является своего рода препятствием для производительности. Xcode 4 отстой по-королевски :( ... хороший ответ, однако. - person Nate; 24.07.2012
comment
Хахахаха, для меня шоу уже остановилось. Когда я добавил библиотеку C++ Eigen, индексатор полностью задохнулся, и все переходы к определению и т. д. перестали работать, даже в те короткие моменты, когда он прекращал индексирование. Серьезно, они вообще тестируют это программное обеспечение… - person Potatoswatter; 17.08.2012
comment
Трудно описать улучшение после отключения индексации на моем Mac Pro. Теперь я могу свободно просматривать свой проект. До отключения требовалось несколько секунд, чтобы просто ввести один символ. - person ArtHare; 26.10.2013
comment
Вау, невероятно! В любом случае, когда вы используете vim в качестве редактора, это идеально. - person elimirks; 17.12.2013
comment
Для меня сработало то, что я закрыл множество других приложений Mac, которые я открывал (Excel, Powerpoint, несколько браузеров). Затем сообщение «Индексирование приостановлено» исчезло, и я смог быстро запустить свое приложение в Xcode. Моя конфигурация — Mac 0S 10.9 с 8 ГБ ОЗУ. - person Jazzmine; 27.05.2014
comment
open -a xcode --args -IDEIndexDisable 1 можно использовать для временного отключения. не нужно писать значения по умолчанию - person SolaWing; 03.05.2019

Снижение приоритета процесса XCode помогает:

renice 10 -p PID

Вы можете получить PID из Монитора активности или команды top/ps.

person Peter Tseng    schedule 30.06.2011
comment
Это не поможет, если проблема связана с использованием памяти. Xcode по-прежнему будет потреблять тот же объем памяти; он просто будет использовать его дольше. - person Peter Hosey; 08.02.2012
comment
Верно, но это освобождает циклы процессора для других задач. На данный момент я вернулся к XCode 3, но когда-нибудь мне придется попробовать 4 с отключенным индексированием. - person Peter Tseng; 21.02.2012

Эта проблема была замечена в этой группе новостей:

Суть в том, что XCode4 использует сумасшедшее количество оперативной памяти во время индексации - например, 5 ГБ или около того(!), и, таким образом, если вы работаете на машине с чем-то вроде 12 ГБ, проблем нет. , но если вы работаете на ноутбуке всего с 2 ГБ или около того, у вас будет довольно серьезная пейджинговая связь.

Я предполагаю, что все внутренние инженеры Apple раскачивали максимальные Mac Pro или что-то в этом роде.

person Richard Kettering    schedule 02.11.2011
comment
К сожалению, это очень похоже на правду! Вы могли бы подумать, что они могут каким-то образом уменьшить требования к емкости памяти. Что происходит, так это то, что на вашем компьютере заканчивается основная память, и он начинает подкачку. Неприятно, даже с SSD. - person lericson; 23.10.2014

Я столкнулся либо с той же проблемой, либо с чем-то подобным. Мой проект включает в себя сильно шаблонный C++. Включение этих заголовков в файл PCH решило проблему для меня.

person Damian Carrillo    schedule 06.04.2012
comment
Кроме того, удаление каталога приложения в ~/Library/Xcode/DerivedData/ позволит Xcode переиндексировать. Это могло бы помочь в ситуации, потому что индексация, казалось, молча терпела неудачу и не могла восстановиться. - person Damian Carrillo; 01.09.2012

Мой новый Macbook Pro с сетчаткой под управлением XCode 4 очень медленно выполнял индексацию (и все остальное). Мой Mac mini дома очень быстро работал над одним и тем же проектом!? Оказывается, это было мое антивирусное программное обеспечение, которое сканировало каждый файл, прочитанный или записанный на MacBook. Отключение этого ускорило все на тонну.

person Jim    schedule 15.12.2012

Медленная индексация не является данностью. И больше памяти не обязательно лучше.

У меня есть проект среднего размера для работы ~ 500 исходных файлов. После удаления производных данных завершение переиндексации этого проекта занимает 18 минут. Это при отсутствии других открытых приложений и без каких-либо других действий с компьютером. Это на довольно недавнем Macbook Pro с 8 ГБ памяти и i7. Ужасно, правда?

Моя домашняя машина — недавний Mac Mini с 4 ГБ памяти и процессором i5. На этой машине для полной индексации точно такого же проекта требуется 40 секунд.

Я пока не знаю, в чем разница, но я работаю над этим.

person dar512    schedule 29.05.2012
comment
Вы когда-нибудь задумывались, почему на вашем Macbook Pro это занимает так много времени? Кажется, у меня такая же проблема. - person chown; 06.08.2012
comment
Извините, что поздно, я только что заметил. Да, это была программа проверки на вирусы Norton. После того, как он был удален, времена были впечатляюще лучше. С тех пор наша компания переехала в Clam. - person dar512; 01.03.2013

В Xcode 4 невозможно отключить индексирование. Многие функции IDE построены на основе поддерживаемого индекса.

person Chris Hanson    schedule 23.03.2011