Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android.database.sqlite.SQLiteException:数据库已锁定:已超出retrycount_Android_Sqlite_Browser - Fatal编程技术网

android.database.sqlite.SQLiteException:数据库已锁定:已超出retrycount

android.database.sqlite.SQLiteException:数据库已锁定:已超出retrycount,android,sqlite,browser,Android,Sqlite,Browser,我正在尝试以编程方式读取浏览器历史记录。代码运行正常,但有时代码会给出android.database.sqlite.SQLiteException:数据库被锁定:超出了retrycount。在我的应用程序中,这段代码是从多个线程访问的,所以现在我将该方法更改为synchronized,它将从后台读取浏览器历史记录。现在在我的应用程序中,此方法将只能逐个访问,因为此方法是同步的 这是我的密码: String[] proj = new String[] { Browser.BookmarkColu

我正在尝试以编程方式读取浏览器历史记录。代码运行正常,但有时代码会给出android.database.sqlite.SQLiteException:数据库被锁定:超出了retrycount。在我的应用程序中,这段代码是从多个线程访问的,所以现在我将该方法更改为synchronized,它将从后台读取浏览器历史记录。现在在我的应用程序中,此方法将只能逐个访问,因为此方法是同步的

这是我的密码:

String[] proj = new String[] { Browser.BookmarkColumns.TITLE, Browser.BookmarkColumns.URL,       Browser.BookmarkColumns.DATE, Browser.BookmarkColumns.VISITS };

mCur = context.getContentResolver().query(Browser.BOOKMARKS_URI, proj, null, null, null);

if(mCur != null)
{
// Processing on cursor
}

但我想知道什么时候浏览器数据库会被任何其他应用程序访问,同时我的应用程序会访问浏览器数据库,那么这个异常就会出现。如果是,则如何处理此情况以避免此异常。

请输入您的代码…@HarshitRathi我已添加代码。是否关闭光标。用try…catch块环绕。@HarshitRathi Yes光标将在所有处理后关闭。