
我偶然发现了使用Cursor对象的许多链接,但没有一个关于如何最好地使用它的信息.因此,我有几个我很想回答的问题.
>是否可以将一个Cursor用于所有应用程序的数据库 *** 作?如果没有,为什么?
>每次使用后是否真的有必要保持打开和关闭游标?
>在this链接上,close()的定义是Closes the Cursor,释放其所有资源并使其完全无效.无效时会发生什么?可以重用吗?
非常感谢.
解决方法:
1.)可以将一个Cursor用于所有应用程序的数据库 *** 作吗?如果没有,为什么?
是.可以重新使用光标.但是,您应该知道,游标的工作并不像您想象的那样直观.游标不会从某个数据存储中获取所有数据,也不会将所有数据存储在内存中.取而代之的是,它仅根据需要提取数据,从而最大程度地减少了内存使用.因此,在重新初始化之前关闭游标总是一个好主意.话虽如此,每当您需要一个全新的Cursor时,实际上并没有太多性能损失.
2)是否真的有必要在每次使用后保持打开和关闭游标?
是的,是的,是的.我曾经在调试某些网络应用程序时遇到很多问题,这些应用程序是将手机的活动定期同步到本地数据库,然后再发送到外部服务器.就像其他任何在Java或androID中通信的流或端点一样,打开和关闭(尤其是关闭)非常重要,例如fileinputStream或Socket
3)在此链接上,close()的定义是关闭游标,重用其所有资源并使它完全无效.无效时会发生什么?可以重用吗?
如上所述,close()方法的工作原理与Java中其他类的大多数close()方法一样.一旦调用它,您就不应再次使用光标.就像Socket的class close()方法一样.套接字关闭后,将无法再用于网络连接(即无法重新连接或反d).需要创建一个新的套接字.
总结以上是内存溢出为你收集整理的android-最佳游标使用全部内容,希望文章能够帮你解决android-最佳游标使用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)