2009-05-07 18 views
3

我記得在VS2008中閱讀關於multiproc版本的地方,但現在只能找到這篇文章。有人知道如何打開它,或者即使有可能嗎?Multiproc內置於VS2008

回答

5

有兩種方法可以在VS2008中並行化構建。

第一個是並行運行多個項目構建。該設置位於工具 - >選項 - >項目和解決方案 - >構建和運行,稱爲「最大並行項目數量」。請注意,每個項目一次只能構建一個文件。

第二個是在單個項目中一次編譯多個文件。使用C++,這可以通過設置/MP compiler flag來完成。請注意,這個功能與預編譯頭文件相互作用很奇怪,你必須跳過一些箍來組合這兩者。

+0

@Ben:你能否詳細說明「與預編譯頭文件奇怪地交互」?我對我們的資源嘗試了/ MP,並且編譯器間歇性地失敗並導致了權限錯誤,可能是因爲並行進程互相干擾。可能調整我的預編譯頭設置幫助,還是這是不相關的?謝謝... – RichieHindle 2009-05-07 17:24:19

+0

我在這裏討論一些與/ MP的其他問題:http://stackoverflow.com/questions/230298 – Aardvark 2009-05-07 18:49:55

+0

@Richie:我們發現一個/ MP構建會失敗輝煌的項目級設置預編譯頭。如果你爲* project *設置了/ Yu,並且在stdafx.cpp中設置了/ Yc,它似乎可以正常工作。 – 2009-05-18 21:34:37

0

哪種語言?你的意思是多線程CRT庫(即使用/ MD C++編譯器選項)?

0

我懷疑你是在問新的(用於VS 2008)多處理器的VC++編譯特性。請參閱this

的/ MP選項可以減少總 時間彙編關於 命令行的源文件。/MP選項 會導致編譯器自己創建一個或多個副本,每個副本都在一個獨立的進程中。然後這些副本 同時編譯源文件 。因此,構建源文件的總時間可以是 ,大大減少了 。

此功能存在於舊版本的VC++中,但沒有記錄。這是不是我們已經有一段時間的多項目建設。