4

構築するVisualStudioソリューションがいくつかあります。

Microsoft.Build.BuildEngineを使用して、一度に複数のソリューションを構築できますか(つまり、マルチスレッドを使用)?

私はそれが私のプログラムにとって何を意味するのか完全には理解していませんが、それがいくつかのSTAThread要件を持っていることを知っています。

編集:明確にさせてください。MSBuildがソリューション内のプロジェクトのマルチスレッドビルドを実行できることを私は知っています。私が持っている質問は、Microsoft.Build.BuildEngine.Engineをさまざまなスレッドで使用して、さまざまなソリューション/プロジェクトを構築できるかどうかです。

異なるスレッドで別々のエンジンを作成しようとしましたが、機能しませんでした。1つのスレッドで1つのエンジンを使用してみたところ、機能しました。

Microsoft.Build.BuildEngine.NETライブラリは一度に複数のプロジェクト/ソリューションを構築できますか?

4

1 に答える 1

0

それはあなたが何をしているかによります。はい、複数の並列プロジェクト ビルドを実行できます (VS では、[ツール] -> [オプション] -> [プロジェクトとソリューション] -> [ビルドと実行] に移動します)。MSBuild を実行している場合は、/m[:number] コマンドを使用できます。Microsoft.Build.Construction/Microsoft.Build.Evaluation/Microsoft.Build.Execution を支持して廃止された BuildEngine に関しては、使用するスレッドの数を設定するのは BuildParameters.MaxNodeCount だと思います。個人的には、msbuild 自体を実行するか、IDE を使用することをお勧めしますが、はるかに簡単です。

于 2013-03-20T03:36:37.290 に答える