commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sebb <seb...@gmail.com>
Subject Re: [Math] Confusing (?) use of "getInstance()" in formatting classes
Date Tue, 26 Jul 2011 13:00:39 GMT
On 26 July 2011 13:19, Gilles Sadowski <gilles@harfang.homelinux.org> wrote:
> Hi.
>
> [This is related to issue MATH-622.]
>
> Looking at the "CompositeFormat" and "RealVectorFormat", I notice an unusual
> use of the "getInstance" method name. Unless I'm mistaken, "getInstance" is
> most often used when the object stores a reference to a singleton. And in
> those class, this does not seem to be the case: When I write
> ---
>  RealVectorFormat.getInstance().getFormat().setMaximumFractionDigits(6);
> ---
> the output is unaffected, the default being to display 2 fraction digits),
> which is not suitable for debugging.
>
> I think that there should be a way to modify at once all outputs formatted
> through "CompositeFormat", i.e. an actual singleton instance of "NumberFormat"
> that is used by all "default" formatting.
>
> Do you agree? Any caveats?

The singleton will need to be thread-safe.

A mutable singleton is thread-hostile (*), so if this approach is
taken, the Javadoc need to make this very clear.

(*) Thread A sets the digit count, thread B sets it differently;
thread A may not get the desired digit count.
>
> Regards,
> Gilles
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
> For additional commands, e-mail: dev-help@commons.apache.org
>
>

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


Mime
View raw message