需求描述:用一个线程池处理读取到的文件信息,但是 while
之后有一块代码始终没有走不知道为什么?
代码:
public static void ListLine()
{
using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read))
{
fs.Position = position;
using (StreamReader sr = new StreamReader(fs, Encoding.UTF8))
{
string line = string.Empty;
List<string> listStr = new List<string>();
AnalyticalArithmetic analytickal;
while ((line = sr.ReadLine()) != null)
{
if (listStr.Count == 100)
{
analytickal = new AnalyticalArithmetic();
analytickal.listStr = listStr;
ThreadPool.QueueUserWorkItem(analytickal.test);
listStr = new List<string>();
}
listStr.Add(line);
}
//断点未到达这里
analytickal = new AnalyticalArithmetic();
analytickal.listStr = listStr;
ThreadPool.QueueUserWorkItem(analytickal.test);
position = fs.Length;
}
}
}
经过仔细调戏,数据库链接池中连接数满了,没有做连接释放