2015-10-08 21 views

回答

2

我不知道「並行化構建」設置的內部結構,但我們可以推斷爲什麼該設置有時可能沒有好處。

首先很好理解「Parallelize Build」的作用。 Source

該選項允許的Xcode通過建立不同時互相依賴 目標,以加快總建築時間。對於具有許多較小依賴項的項目,這是一個節省時間的工具,可以輕鬆地並行運行 。

當您有許多目標相互依賴其他目標時,此選項可能會產生問題。

例如,假設一個目標是一個框架,您的應用程序目標依賴於。如果您對框架目標進行了修改,則有些情況下您必須在應用程序目標之前構建框架目標。將這些並行化將不起作用,因爲爲了使應用程序目標和框架目標一起工作得很好,它們必須「同步」。我們不能構建應用程序目標,而無需首先編譯框架目標中的更改。

上面是一個簡單的例子,Xcode可能已經很好地處理了,但是一些項目變得非常複雜,並且沒有將目標依賴關係的適當信息提供給Xcode,它可能無法正確地並行化目標。

總之,該設置可能是有益的,並且可以降低構建速度如果啓用該設置並且沒有發現代碼在目標間不同步時出現任何問題。否則,請關閉它。與所有性能設置一樣,請確保測試並衡量您是否確實看到了構建速度的提升。