ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Bodewig <bode...@apache.org>
Subject Re: Ant 1.6 local and ThreadLocals
Date Tue, 02 Dec 2003 15:19:57 GMT
On Mon, 1 Dec 2003, Jose Alberto Fernandez <jalberto@cellectivity.com>
wrote:

> Well now that we are finally getting to an agreement
> on <macrodef> I think it is time to start a new round
> of rocous over <local>, (not enough traffic today ;-P )

We don't seem to be too successful in generating responses these
days. 8-)

I'm a bit torn between releasing 1.6 without any local support and
trying to get enough support for it to delay 1.6 further.  I think
local is necessary to make macrodef as powerful as it should be, but
wouldn't want to wait another two months to finally get committer
support for it into 1.6.

> I still fill a little unconfortable on using <local>
> for defining local-scopes (which was the original usage)
> and using <local> to define values that must be different
> on different threads of execution (i.e., Java ThreadLocals).

Hmm,

<parallel>
  <sequential>
    <local property="a">
      ...
    </local>
  </sequential>
  <sequential>
    <local property="a">
      ...
    </local>
  </sequential>
</parallel>

should give something predictable - or something that is completely
undefined, much like what we'd currently have for references.

The above looks like a "user's fault" situation, until you let
<macrodef>'s using <local>s into the game.

<macrodef name="foo">
  <sequential>
    <local name="my-temporary-variable">
       ...
    </local>
  </sequential>
</macrodef>

with multiple invocations of <name> inside <parallel>.  For a scenario
like this, <local> implicitly promises to be Thread local.  At least
it does for me.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Mime
View raw message