相关疑难解决方法(0)

.NET的StringBuilder是否是线程安全的

MSDN文档的常规"线程安全"部分,用于StringBuilder说明:

...任何实例成员都不保证是线程安全的......

但是这个陈述感觉它已被复制并粘贴到框架中的几乎每个类:

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/

此外,Reflector揭示的StringBuilder的源代码以及SSCLI源代码中的相应注释也提出了许多实现注意事项以确保线程安全性:

http://labs.developerfusion.co.uk/SourceViewer/browse.aspx?assembly=SSCLI&namespace=System.Text&type=StringBuilder

有没有人更深入地了解一个StringBuilder实例是否可以安全地在多个并发线程之间共享?

.net stringbuilder thread-safety

30
推荐指数
2
解决办法
1万
查看次数

标签 统计

.net ×1

stringbuilder ×1

thread-safety ×1