It may be better to stay away from a grammar that gives the rules and use 
something like:

  <target name="d" depends="e" ... </target>
 <target name="e" " ...  <parallelexecute targets="a,c" ... </parallelexecute> 
... </target>
 <target name="c" depends="b" ... </target>
 <target name="b" ... </target>

How do you propose to handle potential fatal/non fatal errors? If target a 
exits due to an error, should there be an option to kill a or allow it to 
complete (similar to failonerror="yes/no")? If both a and (b,c) must succeed 
for d, should a be killed if b or c fails? That would indicate a method (stack, 
shared memory, etc.) for tracking the result of the sub processes.

I have done parallel builds with make in the past using multiple systems with 
shared drives and file based information passing. It was not difficult, but 
error handling was always the issue.


Klaus Malorny <[EMAIL PROTECTED]> wrote: 
Hi,

with the increased availability of multi-core systems, I am wondering whether
there are ways to improve the capabilities of Ant to parallelize the build
process. While it is possible to execute tasks in parallel within a target, it
seems to not be simple to execute multiple targets in parallel. My vision is
an extension to the "depends" attribute: if a pipe is used instead of a comma,
the target does not care about the order and the targets may be executed in 
parallel by Ant. I would also add parenthesis to group things. For example, "(a 
| (b, c)), d)" means, c must be executed after b, but both may be executed in 
parallel to a, while d must be executed only after completion of a, b and c. Of 
course, more constraints may occur in the dependent targets, e.g. if c depends 
on a, they can't be executed in parallel. Just an idea, feel free to ignore it 
;-)

Klaus



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




Thank you,
Chuck Holzwarth
(804) 403-3478 (home)
(540) 335-3171 (cell)
       
---------------------------------
Be a better friend, newshound, and know-it-all with Yahoo! Mobile.  Try it now.

Reply via email to