天天看点

valgrind 报告 ecpg内存泄露 (二)

真是原因到底是什么呢?

由于 EXEC SQL CONNECT 而导致 valgrind 报告 内存泄露错误。

那么在同一个程序里面,加入  EXEC SQL DISCONNECT 后,会如何呢?

验证的结果是,依然如此,还是会说 still reachable: 220 bytes in 1 blocks。

进一步的分析会发现,

即使没有 EXEC SQL CONNECT 或者 EXEC SQL DISCONNECT

只要有对 sqlca 的引用,就会出被报告错误。

 if(sqlca.sqlcode == 0){

           exit(0);

}

而一个很单纯的程序,如果没有上述一段程序,就不会被 valgrind 报错。

本文转自健哥的数据花园博客园博客,原文链接:http://www.cnblogs.com/gaojian/archive/2012/08/14/2637907.html,如需转载请自行联系原作者