赞
踩
android上手没多久,正好涉及到数据库操作,用了android自带的sqlite。
正好需要往数据库导点数据进去测试用,然后直接在主进程写数据库了。。。然后,就出现这个问题:could not allocate cursorwindow,errno:-12。
在网上搜了许久,stack overflow上也有人提问,结果在乐乎上找到答案了。
原来是写数据库时涉及到了读操作,然后Cursor用了没关掉,就是没调用cursor.close。关于这点,我猜android的java虚拟机是不是会自动关闭废弃掉无用的cursor,但是由于测试时不停地写,所以自动清理cursor没来得及处理。只是猜而已,后面再作深究。但是,本着严谨的态度,每次用到cursor还是在结果明确的把它关闭为妙。
另:还有个疑问。怎么去根据errno查对应的错误,比如此处:-12。
慢慢来。。。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。