在NAnt上执行并行任务

时间:2011-03-10 11:22:21

标签: nant

我正在使用NAnt为不同配置的同一软件构建5个不同的安装程序包。这些任务可以并行化,因为它们不相互依赖。构建这些配置的Installshield在多核CPU使用方面似乎效率低下(4核计算机的CPU使用率上限为25%)。我一直在寻找一种简单的方法来平行任务,只找到this,这正是我所需要的。但是,此项目的源代码不可用,并且它引用了一些类型,这些类型在我们需要.NET 4.0支持的最新版本的NAnt 0.91中不可用。

关于如何解决这个问题的任何想法,没有为NAnt编写我自己的扩展名?

4 个答案:

答案 0 :(得分:4)

我实际上是通过写信给作者找到了源代码。它现在是CIFactory的一个项目的一部分,源代码可以通过project homepage访问。通过一些修改,我能够在最新的NAnt版本上运行它。我会在解决一些问题时发布它,主要是关于输出流到哪里。

答案 1 :(得分:3)

如果您回头看页面,请在评论中进一步查看 Links to source code

来源可用。 '当然反射器会用正确的插件反汇编......

答案 2 :(得分:0)

老实说,这并不是特别困难,但我不知道NAnt会做任何其他现成的项目或贡献任务。因此,您唯一的选择就是编写自己的并行任务实现。也就是说,既然这个人提供了编译过的程序集,你总是可以在Reflector中看一看,如果你知道我的意思就得到一般的想法:)

答案 3 :(得分:0)

看看https://github.com/NAntCrossCompile/NAnt.Parallel 开发中有一个插件允许基于文件,文件夹,字符串集合并行执行任务......