Path: csiph.com!x330-a1.tempe.blueboxinc.net!newsfeed.hal-mli.net!feeder3.hal-mli.net!news.glorb.com!feeder.erje.net!feeder.news-service.com!94.75.214.39.MISMATCH!aioe.org!.POSTED!not-for-mail From: Abu Yahya Newsgroups: comp.lang.java.programmer Subject: Re: baseline performance test using java ... Date: Mon, 04 Jul 2011 06:52:04 +0530 Organization: Aioe.org NNTP Server Lines: 26 Message-ID: References: <1309715588.716395@nntp.aceinnovative.com> NNTP-Posting-Host: nyJO2B725g8xkpRStJY9TQ.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.18) Gecko/20110616 Thunderbird/3.1.11 X-Notice: Filtered by postfilter v. 0.8.2 Xref: x330-a1.tempe.blueboxinc.net comp.lang.java.programmer:5838 On 7/4/2011 12:15 AM, Patricia Shanahan wrote: > On 7/3/2011 11:33 AM, Abu Yahya wrote: >> On 7/3/2011 11:23 PM, lbrt chx _ gemale kom wrote: >> >>>>> ~ We have all learned we should avoid String(s) and use >>>>> StringBuffer(s) or better yet StringBuilder(s) but there is >>> ~ >>>> Er, no. Strings are great ... >>> ~ >>> I (obviously) meant to say String(s) if you need to build them >>> andStringBuilder(s) >> > if you are working (most of us by now) on some multiprocessing core >>> ~ >> >> If you need to build them, you'd need a StringBuilder. And if you need >> support for multiple threads AND need to modify them, you'd need a >> StringBuffer. > > Often, the StringBuffer locking is not strong enough to be really > useful. If, for example, a thread needs to append two strings to the > buffer and have them appear consecutively in the resulting string, it > needs synchronization at a higher level. True. StringBuffer's locking will only help in guaranteeing an output in which either the first string /or/ the second string is /completely/ appended first. If the order matters, the built-in locking won't help.