android中的SqliteContoPendDatabaseException同时执行大量操作,应用程序挂起

android中的SqliteContoPendDatabaseException同时执行大量操作,应用程序挂起,android,database,performance,sqlite,android-sqlite,Android,Database,Performance,Sqlite,Android Sqlite,我正在创建一个适用于UDP和MQTT通信的应用程序。 当有后台服务时,大量数据同时通过UDP通信从另一个设备接收,每个数据存储到SQLite数据库,并对数据库中的不同表进行大量操作 虽然有许多操作,但它仍然显示错误 SQLiteDatabase db=this.getWritableDatabase()处的SQLiteCantoPendDatabaseException 应用程序被挂起并崩溃,显示消息“不幸的是,应用程序已停止” 所以我需要一个解决方案来改进这一点并避免这一错误 即使我已经将每个

我正在创建一个适用于UDP和MQTT通信的应用程序。 当有后台服务时,大量数据同时通过UDP通信从另一个设备接收,每个数据存储到SQLite数据库,并对数据库中的不同表进行大量操作

虽然有许多操作,但它仍然显示错误

SQLiteDatabase db=this.getWritableDatabase()处的SQLiteCantoPendDatabaseException

应用程序被挂起并崩溃,显示消息“不幸的是,应用程序已停止”

所以我需要一个解决方案来改进这一点并避免这一错误

即使我已经将每个操作都放在
try..catch…
块中,但它也会抛出错误

错误的Logcat是

05-18 10:34:23.402 1253-1253/com.nivida.smartnode E/SQLiteLog:(14)无法打开[b3bb660af9]第30052行的文件
05-18 10:34:23.402 1253-1253/com.nivida.smartnode E/SQLiteLog:(14)os_unix.c:30052:(24)打开(/storage/emulated/0/smartnode/smartnodedb.db)-
05-18 10:34:23.411 1253-1253/com.nivida.smartnode E/SQLiteDatabase:无法打开数据库“/storage/emulated/0/smartnode/smartnodedb.db”。android.database.sqlite.SQLiteCantoPendDatabaseException:未知错误(代码14):无法打开数据库
位于android.database.sqlite.SQLiteConnection.nativeOpen(本机方法)
位于android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:209)
位于android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:193)
位于android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)
位于android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)
位于android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)
位于android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:806)
位于android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:791)
位于android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:694)
位于android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:1190)
位于android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:274)

在android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:223)在android.database.sqlite.SQLiteOpenHelper.getwriteabledatabase(SQLiteOpenHelper.java:163)在com.nivida.smartnode.model.DatabaseHandler.setDimerValue(DatabaseHandler.java:1616)上发布日志猫消息发布日志猫消息