sqlite数据库sqlite3_finalize不使用合适吗

wain_ 2014-09-03 12:32:40
int sqlite3_finalize(sqlite3_stmt *pStmt);
这个过程销毁前面被sqlite3_prepare创建的准备语句,每个准备语句都必须使用这个函数去销毁以防止内存泄露。
在空指针上调用这个函数没有什么影响,同时可以准备语句的生命周期的任一时刻调用这个函数:在语句被执行前,一次或多次调用sqlite_reset之后,或者在sqlite3_step任何调用之后不管语句是否完成执行。
我想问下如果不使用这个函数,内存泄露会很严重吗?
因为每次查询数据完调用这个函数销毁,cpu占用会浪费多一点,想省下这一点所以想不用这个函数或者多次查询后再调用销毁可以吗?
...全文
1365 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
注定会 2018-06-08
  • 打赏
  • 举报
回复
每次查询会产生一个prepared statement的实例,如果最后统一销毁,那得记录每次执行操作得到的prepared statement的指针吧?
iihero_ 2014-09-04
  • 打赏
  • 举报
回复
内存泄露最终会导致程序无法运行,你自己权衡吧
九月茅桃 2014-09-03
  • 打赏
  • 举报
回复
需要的,这单cpu的消耗在承受的范围之内。

2,209

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 其他数据库
社区管理员
  • 其他数据库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧