2 Questions on StringBuffer
Rémi Forax
forax at univ-mlv.fr
Wed Mar 17 16:36:41 UTC 2010
Le 17/03/2010 17:29, Ulf Zibis a écrit :
> Why there are 2 methods which do not use the super method, where I
> can't see any difference? :
>
> public synchronized char charAt(int index)
> public synchronized void setCharAt(int index, char ch)
>
> Wouldn't ensureCapacity better coded as follows? :
> public void ensureCapacity(int minimumCapacity) {
> if (minimumCapacity > value.length) synchronized {
> ensureCapacity(minimumCapacity);
> }
> }
> This would save the synchronization if there is nothing to do.
>
> -Ulf
>
>
>
no, it doesn't work.
if some variables are not in the synchronized block,
they can be updated by one thread but this change will be not visible in
another thread.
Rémi
More information about the core-libs-dev
mailing list