В разделе "Безопасность потока" в документации MSDN для StringBuilder
указано, что:
... любые члены экземпляра не гарантируют безопасность потоков...
но это утверждение похоже, что оно было скопировано и вставлено почти для каждого класса в Framework:
http://msdn.microsoft.com/en-us/library/system.text.stringbuilder.aspx
Тем не менее, в этих блогах Gavin Pugh упоминаются потокобезопасные поведения StringBuilder
:
http://www.gavpugh.com/2010/03/23/xnac-stringbuilder-to-string-with-no-garbage/
http://www.gavpugh.com/2010/04/01/xnac-avoiding-garbage-when-working-with-stringbuilder/
Кроме того, источник StringBuilder, обнаруженный Reflector, и сопровождающие комментарии в источнике SSCLI, также предлагают множество соображений по внедрению для обеспечения безопасности потоков:
Есть ли у кого-нибудь более глубокое понимание того, может ли экземпляр StringBuilder
безопасно делиться между несколькими параллельными потоками?