From 0a97ce80bc33c168880200f0c37d7a7d027ec600 Mon Sep 17 00:00:00 2001 From: Mygod Date: Mon, 15 Jul 2019 17:43:54 +0800 Subject: [PATCH] Use shared thread pool for queries --- .../java/be/mygod/vpnhotspot/room/AppDatabase.kt | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/mobile/src/main/java/be/mygod/vpnhotspot/room/AppDatabase.kt b/mobile/src/main/java/be/mygod/vpnhotspot/room/AppDatabase.kt index f8ab1baf..5a04b9cc 100644 --- a/mobile/src/main/java/be/mygod/vpnhotspot/room/AppDatabase.kt +++ b/mobile/src/main/java/be/mygod/vpnhotspot/room/AppDatabase.kt @@ -7,6 +7,8 @@ import androidx.room.TypeConverters import androidx.room.migration.Migration import androidx.sqlite.db.SupportSQLiteDatabase import be.mygod.vpnhotspot.App.Companion.app +import kotlinx.coroutines.GlobalScope +import kotlinx.coroutines.launch @Database(entities = [ClientRecord::class, TrafficRecord::class], version = 2) @TypeConverters(Converters::class) @@ -15,11 +17,12 @@ abstract class AppDatabase : RoomDatabase() { const val DB_NAME = "app.db" val instance by lazy { - Room.databaseBuilder(app.deviceStorage, AppDatabase::class.java, DB_NAME) - .addMigrations( - Migration2 - ) - .build() + Room.databaseBuilder(app.deviceStorage, AppDatabase::class.java, DB_NAME).apply { + addMigrations( + Migration2 + ) + setQueryExecutor { GlobalScope.launch { it.run() } } + }.build() } }