sqlite内存泄漏解决办法
2012-09-26 13:54:54|分类: 默认分类 |举报 |字号订阅
用cppsqlite发生内存泄漏,最后发现是把事物当普通语句去执行了。
其实本质是下面的:
1. 在使用
sqlite3_get_table( sqlite3 *db,/* An open database */ const char *zSql,/* SQL to be evaluated */ char ***pazResult,/* Results of the query */ int *pnRow,/* Number of result rows written here */ int *pnColumn,/* Number of result columns written here */ char **pzErrmsg /* Error msg written here */ );
后,要调用 sqlite3_free_table(pazResult) 来释放结果集,防止内存泄露
2. 在使用
sqlite3_exec( sqlite3*,/* An open database */ const char *sql,/* SQL to be evaluated */ int (*callback)(void*,int,char**,char**),/* Callback function */ void *,/* 1st argument to callback */ char **errmsg /* Error msg written here */ );
后,要调用 sqlite3_free(*errmsg) 来释放错误信息,防止内存泄露 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|