StringBuilder.ToString()抛出一个“索引超出范围”异常
问题描述:
我真的很感激有人帮助我解决了以下问题:StringBuilder.ToString()抛出一个“索引超出范围”异常
我现在再以下异常我越来越:
指数超出范围。必须是非负的并且小于 的大小。参数名称:chunkLength
on stringBuilder.ToString()
。
奇怪的是,如果我把stringBuilder.ToString()
放在手表中,它完美的工作。
答
看起来像是一个多线程问题。我锁定线程以防止同时多次访问stringBuilder。
public void AddString(string s)
{
lock(this.LockObject)
{
StringBuilder.AppendLine(s);
}
}
是否有可能您的StringBuilder也被另一个线程使用? –
您能否提供导致异常的snippit,包括如何构建字符串生成器? – deepee1
在事件上调用stringBuilder.AppendLine。然后它会在不同的线程上显示在屏幕上。 –