預知編譯

當檔案存在可被處理時,Xcode 即使您正在編輯源檔案,Xcode 知道您明確的發起一個聯編,Xcode

概念

預知編譯是一個被引入用來減少編譯單個檔案改變所需的時間,並加速編輯―編譯―調試的軟體開發周期的特性。如果您在您的項目中激活了預知編譯,Xcode會開始編譯當前目標中需要聯編的檔案。

編譯進程

預知編譯使用 Xcode 用來維護使用本地聯編系統目標的聯編狀態的信息。Xcode 保存了所有參與聯編的檔案以及它們所依賴的檔案的圖,也保存了需要更新的檔案的一個列表。在任何時刻,Xcode 知道在聯編一個目標的產品的哪些檔案是過時的,以及使這些檔案得以更新的動作。當依賴於一個檔案的所有檔案更新時,該檔案可以被更新。當檔案存在可被處理時,Xcode 開始在後台更新它們,即使您在編輯項目。
即使您正在編輯源檔案,Xcode 也會開始編譯它。Xcode 開始讀入並解析頭檔案,在您發起一個聯編之前開始該檔案的編譯進程。當您選擇保存並聯編該檔案時,許多相關的工作已經完成了。
知道您明確的發起一個聯編,Xcode 不會提交任何輸出檔案到它在檔案系統中的標準位置上。當您通過調用一個聯編命令表示完成編輯時,Xcode 決定是保留還是丟棄它在後台生成的輸出檔案。如果後來的改變對檔案的內容沒有影響,Xcode 將該檔案提交到檔案系統中預定的位置。否則,Xcode 丟棄結果並重新生成輸出檔案。

自定義預知

您可以通過選擇 Xcode 預製視窗中聯編面板的“激活預知編譯”選項打開預知編譯。
預知編譯僅工作在 GCC3.3 和本地目標上。所有的預知編譯在您的計算機上本地完成,不管您是否打開了分散式聯編。在一台較慢的機器上,打開預知編譯也許會妨礙編輯時 Xcode 的性能。
為保存電池能量,Xcode 在筆記本電腦處於電池供電時上關閉預知編譯。

相關詞條

熱門詞條

聯絡我們