I've got some interesting (IMO) tasks here that I'm hoping the project would like to pick up. We developed them for part of the build of a proprietary project, but my customer (I'm a consultant) is interested in donating them back, at least in part so keeping them in sync with NAnt upgrades becomes someone else's problem. :)
Here are the tasks: <asyncexec program="..." workingdir="..." handleProperty="somepropertyname"> <arg value="..." /> <arg value="..." /> </asyncexec> And <asyncrendezvous handle="${somepropertyname}" ignorestderr="false" ignorestdout="false"/> The first one is pretty much exactly like <exec>, with the exception that it does not wait for the process to terminate. Instead, it kicks it off and immediately returns, storing a "handle" to the process in the property indicated by the handleProperty attribute. Later, you can wait for the process to terminate via the <asyncrendezvous> task. The ignorestderr and ignorestdout attributes let you ignore standard error and standard output, which was something I found useful for reasons unrelated to the asynchronous nature of the tasks. Bonus feature! :) Using these two tasks together has helped us speed up our build by a factor of two, by starting long-running tasks early in the build (database setup, in our case) and then rendezvousing on their completion later on. Because the things we're doing are IO-bound rather than CPU-bound, the parallelism really helps. Anyway, they're happy to donate the code for these tasks, but I don't know that they'd have the resources to shepherd it through the integration process. Ideally, someone from this project would step up and take ownership of the code instead. Anyone willing? ------------------------------------------------------- This SF.Net email is sponsored by Oracle Space Sweepstakes Want to be the first software developer in space? Enter now for the Oracle Space Sweepstakes! http://ads.osdn.com/?ad_idt12&alloc_id344&op=click _______________________________________________ NAntContrib-Developer mailing list NAntContrib-Developer@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/nantcontrib-developer