国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Object-cSQLite數據庫內存溢出問題

2019-11-14 19:22:11
字體:
來源:轉載
供稿:網友

最近正在開發一個應用,應用里面使用SQLite 數據庫的地方比較多,一些下載的內容都進行了SQLite數據庫緩存,應用開發完成之后發現一個嚴重的問題,程序莫名其妙的崩潰,使用XCode的內存分析工具分析后發現,Controller已經完全釋放了,但是打開Controller的時候升高的內存只釋放了三分之一,然后來回的打開Controller和關閉Controller以后發現每次都是一樣,如此反復之后內存就溢出了。

 

這個問題太奇怪了,我非常確認  Controller中調用的所有對象的 Delegate 都置為nil 了,所有創建對象都被置為nil 了,但是內存還是莫名其妙的無法釋放,最后經過反復調試發現SQLite數據庫在打開的時候非常消耗內存,只要是打開數據庫不關閉,內存就會保持在一個穩定的值,也就是說,在程序啟動的時候打開一次數據庫就可以不用關閉了,這樣的話內存反而能長期保持在一個非常低的值,而且還有一個好處就是執行SQL的時候非??欤ㄟ@個倒是可以理解,每次執行SQL的時候不用打開和關閉數據庫了嘛)。

 

本人之前是做過很長一段時間的服務端開發,從我接觸數據庫開始,所有教材都是告誡我,使用完數據庫之后一定要關閉,這樣的話可以有效的釋放連接 和內存,但是坑爹的IOS居然是變相的鼓勵不關閉數據庫,這個簡直就是顛覆了我的世界觀,讓我說什么好呢?只能呵呵了,希望以后各位不會遇到相同的問題。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临夏县| 巢湖市| 衡水市| 文成县| 沙洋县| 衡东县| 体育| 漳浦县| 四川省| 甘泉县| 民县| 察雅县| 怀安县| 金门县| 泸州市| 玛多县| 凉城县| 同德县| 东丰县| 广宗县| 安陆市| 常州市| 微博| 利辛县| 四平市| 甘南县| 天气| 锡林浩特市| 大埔区| 宜丰县| 安多县| 旅游| 永定县| 江门市| 顺义区| 博罗县| 太白县| 五寨县| 南投市| 怀安县| 岚皋县|