2010-03-03 4 views

Antwort

16

Sein einziger Staat ist ein

private final String separator; 

Also ja, es THREAD ist.

+2

@Pangea - Es ist jetzt THREAD. Wenn dies nicht als Thread-sicher dokumentiert ist, kann sich das in Zukunft ändern. – Robin

+1

Da es sich um ein so günstiges Objekt handelt, erstellen Sie es auch lokal, wenn es benötigt wird. Vermeide es zwischen Threads zu teilen. – daveb

+7

@Robin, das ist kluger Rat. Obwohl dokumentiert oder nicht, wäre es für jeden Bibliotheksbetreuer schrecklich soziopathisch, eine Klasse von threadsafe zu threadsafe zu ändern, nachdem sie veröffentlicht wurde! Das werden wir dir nicht antun. –

28

Ja! Wir werden nicht die Fehler von SimpleDateFormat wiederholen. :-)

Joiner braucht eine ähnliche Dokumentation Upgrade auf das, was Splitter bekam, das seine Schwester Klasse sagt zu erhalten:

* <p><b>Warning: splitter instances are always immutable</b>; a configuration 
* method such as {@code omitEmptyStrings} has no effect on the instance it 
* is invoked on! You must store and use the new splitter instance returned by 
* the method. This makes splitters thread-safe, and safe to store as {@code 
* static final} constants . . . 
+8

Joiner doc wurde jetzt behoben. http://guava-libraries.googlecode.com/svn/trunk/javadoc/com/google/common/base/Joiner.html –