java - 如何在后台线程中正确执行SQL查询?

标签 java android sql multithreading sqlite

我有一个 ViewPager,其中一个页面包含一个 List,该列表是从 SQLite 数据库填充的。通过首先抓取一个光标,然后将所有不同的字段提取到对象中,然后将其添加到列表中,来填充此列表。

但是我还了解到我应该在另一个线程中执行 SQL 操作,以免整个应用程序出现延迟。

正确的做法是什么?我的 SQLite 类是作为单例实现的,因此当我需要访问时调用 MyDatabaseClass.getInstance(context) 就足够了。

最佳答案

SQL 后台查询应像任何其他后台操作一样处理。您可以使用例如ThreadAsyncTask 来执行它们。

<小时/>

线程示例

public void performActionAsync(){
    new Thread(new Runnable(){
        @Override
        public void run(){
           performAction();
        }
    }).start();
}

private void performAction(){
    //perform actions as normal
}

关于java - 如何在后台线程中正确执行SQL查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36878115/

相关文章:

mysql - 使用 MySQL 变量选择分层数据

java - jol GraphLayout 输出中的 "(something else)"是什么?

java - 以编程方式从 Appcompat 22.2.0 更改 float 操作按钮的颜色

php - 更新单个 MySQL 行

sql - 使用 T-SQL 查找特定年份任何 ISO 周内的订单

java - 我怎样才能仅在 opencv(java) 中较暗的区域增强图像的亮度

java - 处理中如何判断串口是USB还是蓝牙?

java - BufferedWriter - 未知来源异常

java - 当 Source 有大量记录时,Akka 流不会运行

android - 在服务器代理后面设置 Android SDK?