Come disabilitare l'indicizzazione in Xcode 4?


90

Non molto tempo fa ho aggiornato Xcode alla versione 4. Questa nuova versione ha dedicato molto tempo all'indicizzazione del progetto (è piuttosto grande). Ecco perché vorrei disabilitare l'indicizzazione. La ricerca nella guida di Xcode e in Internet non ha prodotto risultati.

Risposte:


108

Apri una finestra di terminale e incolla questo comando:

defaults write com.apple.dt.XCode IDEIndexDisable 1

Perderai alcune funzionalità (completamento automatico, passaggio alla definizione, alcuni assistenti non funzioneranno correttamente). Ma recupererai RAM e CPU.

Per il mio progetto Xcode è passato dall'utilizzo di 2 concerti a poche centinaia di MB. (con cui avevo assolutamente bisogno di compilare;))


Questo ha risolto il problema anche per me. Su un progetto di dimensioni moderate un giorno XCode 4 ha deciso di consumare 10 GB di memoria virtuale, ho solo 4 GB fisici e sono rimasto seduto a girare per 5 minuti. Ogni volta che ho provato a riavviare XCode ha fatto la stessa cosa. Eliminato il file dell'area di lavoro, sempre la stessa cosa. La disabilitazione dell'indicizzazione utilizzando questo comando ha risolto il problema.
clemahieu

11
Wow. Perdere la capacità di mostrare un aiuto rapido facendo clic sul nome di una classe o di un metodo è una specie di ostacolo alla produttività. Xcode 4 fa schifo alla grande :( ... buona risposta, però.
Nate

4
Hahahaha, per me lo spettacolo è già finito. Quando ho aggiunto la libreria C ++ Eigen, l'indicizzatore si è bloccato completamente e tutti sono passati alla definizione, ecc. Hanno smesso di funzionare, anche durante i brevi momenti in cui ha smesso di indicizzare. Seriamente, testano anche questo software ...
Potatoswatter

È difficile descrivere il miglioramento dopo aver disabilitato l'indicizzazione sul mio Mac Pro. Ora posso sfogliare liberamente il mio progetto. Pre-disabilitazione, ci sono voluti secondi per inserire semplicemente un carattere.
ArtHare

Wow fantastico! Quando usi comunque vim come editor, questo è perfetto.
elimirks

8

Ridurre la priorità del processo XCode aiuta:

renice 10 -p PID

È possibile ottenere il PID da Activity Monitor o dai comandi top / ps.


2
Questo non aiuterà se il problema è l'utilizzo della memoria. Xcode continuerà a consumare la stessa quantità di memoria; lo utilizzerà solo più a lungo.
Peter Hosey

1
Vero, ma libera i cicli della CPU per altre attività. Sono tornato a XCode 3 per il momento, ma dovrò provare 4 con l'indicizzazione disabilitata prima o poi.
Peter Tseng

7

Questo problema è stato notato in questo newsgroup :

Il punto cruciale sembra essere che XCode4 utilizza quantità folli di RAM durante l'indicizzazione, come 5 GB o giù di lì (!), E quindi se sei su una macchina con qualcosa come 12 GB, non c'è problema, ma se sei acceso un laptop con solo 2 GB o giù di lì, avrai un paging piuttosto grave in corso.

Immagino che gli ingegneri interni di Apple stessero tutti scuotendo i mac pro o qualcosa del genere.


Purtroppo, questo sembra essere molto vero! Si potrebbe pensare che potrebbero in qualche modo ridurre i requisiti di capacità in memoria. Quello che succede è che il tuo computer esaurisce la memoria principale e inizia a scambiare. Non è piacevole, anche con un SSD.
lericson

1

Ho riscontrato lo stesso problema o qualcosa di simile. Il mio progetto include C ++ fortemente basato su modelli. Includere quelle intestazioni nel file PCH ha risolto il problema per me.


1
Inoltre, l'eliminazione della directory specifica dell'applicazione in ~ / Library / Xcode / DerivedData / consentirebbe a Xcode di reindicizzare. Ciò aiuterebbe la situazione perché l'indicizzazione sembrava fallire silenziosamente e non essere in grado di recuperare.
Damian Carrillo

1

Il mio nuovo Macbook pro retina con XCode 4 era estremamente lento nell'indicizzazione (e tutto il resto). Il mio Mac mini a casa stava lavorando molto velocemente sullo stesso progetto !? È venuto fuori che era il mio software antivirus: eseguivo una scansione di ogni file letto o scritto sul MacBook. Disattivarlo ha accelerato tutto di una tonnellata.


0

L'indicizzazione lenta non è scontata. E più memoria non è necessariamente migliore.

Ho un progetto di medie dimensioni per il lavoro ~ 500 file sorgente. Dopo aver eliminato i dati derivati, occorrono 18 minuti per completare la reindicizzazione di questo progetto. Questo senza altre app aperte e senza fare nient'altro con il computer. Questo è su un Macbook Pro abbastanza recente con 8G di memoria e un i7. Orribile, vero?

La mia macchina di casa è un recente Mac Mini con 4G di memoria e un i5. Su quella macchina lo stesso identico progetto impiega 40 secondi per essere indicizzato completamente.

Non so ancora quale sia la differenza, ma ci sto lavorando.


Hai mai capito perché ci vuole così tanto tempo sul tuo Macbook Pro? Mi sembra di avere lo stesso problema.
chown

Scusa se è tardi, l'ho appena notato. Sì, è stato il programma antivirus Norton. Una volta rimosso, i tempi erano straordinariamente migliori. La nostra azienda da allora si è trasferita a Clam.
dar512

-7

Non è possibile disabilitare l'indicizzazione in Xcode 4. Molte delle funzionalità dell'IDE si basano sull'indice che mantiene.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.