我在以下代码中长期(小时,天)获得内存增长和增长。
List<Task> tasks = new List<Task>();
for (int i = 1; i < 20; i++)
{
int j = i;
tasks.Add(Task.Factory.StartNew(() =>
{
while (true)
{
OracleConnection con = new OracleConnection(constr(j));
con.Open();
con.Close();
con.Dispose();
Thread.Sleep(2000);
}
},TaskCreationOptions.LongRunning));
}
Task.WaitAll(tasks.ToArray());
所以,简而言之:我有20个(例如)数据库,并希望在单独的任务中连接它们....而且我每次都需要打开/关闭连接。 运行这几天,几天......内存正在增长......这是不可接受的
使用.NET 4.0和ODP版本4.121.2.0
在没有内存问题的许多不同数据库中,如何在许多并行任务中进行永久打开/关闭活动?