4

Ant で並列タスクを実行しようとしています。
ユーザーがサーバーのリスト ( -Drhosts="rhost1,rhost2,...") を提供すると、システムは毎回異なるホストのみを使用して同じターゲットを起動する必要があります。のみをサポートし
<ac:for>、サポートしません<ac:foreach><sequential><parallel>

何か案が?

4

2 に答える 2

9

プロパティを指定することで並列実行をサポートします。

Ant-contrib の<for>タスクのパラメーター:

parallel
true の場合、ネストされたすべての反復が並行して実行されます。デフォルトは false で、反復の順次実行が強制されます。並列実行が安全であることを確認するのは、呼び出し元の責任です。

threadCount
並列実行時に許容されるスレッドの最大数。

それで設定できればparallel="true"<sequential>内部のタスク<sequential>は引き続き順次実行されるため、ネストされた要素とは何の関係もないことに注意してください。parallelパラメータを設定することで、複数の を同時に<for>実行するようにタスクに指示します -- いくつですか? <sequential>リスト内の要素の数と の値によって異なりますthreadCount

チェックしてください

http://ant-contrib.sourceforge.net/tasks/tasks/for.html

すべてのパラメータを表示します。


<foreach>タスクの場合、リスト内の各要素、またはネストされたファイルセット内の各ファイルに対して指定されたターゲットを実行します。parallelプロパティを使用して実行を並列にすることもできます。

小切手

http://ant-contrib.sourceforge.net/tasks/tasks/foreach.html

于 2012-08-30T02:36:44.263 に答える
0

サンプルコードは次のとおりです。

 <for list="some_list" param="list_param" delimiter="any_delimiter" parallel="true">
     <sequential>
        ...         
     </sequential>
 </for>
于 2012-09-08T07:35:05.447 に答える