批量插入,产生内存堆积,插入次数越多,内存越用越多 返回

SqlSugar 老数据
5 1580
该叫什么 静夜思 发布于2020/11/5
悬赏:100 飞吻

C:\Users\v_yuze.li\Desktop\CMCapture1604563791.png我们有个定时同步的程序,每分钟查询数据库并将结果同步到另一个数据库中(ORACLE),但是碰到一个很麻烦的问题,那就是内存堆积的问题,批量插入部分代码如下:

using (var db = new DbContext())
{
    int num = db.Insertable(list).ExecuteCommand();
}

请问各位大佬,如何解决或者释放这些内存

热忱回答5

  • gc可以强制释放百度一下

    0 回复
  • 感谢您的回复,但是我释放过了,没啥用!还有别的办法么?

    0 回复
  • @静夜思:你先确定一下oracle支不支持bulecopy如果支持的我sqlusgar将支持blukcopy写法这样应该会好些

    0 回复
  • @fate stay night:我看过文档,只有sql才支持bulecopy,oracle只需要LIst就可以进行批量插入

    0 回复
  • 静夜思 静夜思 VIP0
    2020/11/13

    找到解决办法了,OracleConnection.ClearAllPools();强制释放所有的连接池就行了

    0 回复