Capture exception in IO action task

This commit is contained in:
J-Jamet
2021-01-21 14:38:34 +01:00
parent 7e7ab4ce19
commit 4bb366b568

View File

@@ -34,7 +34,12 @@ class IOActionTask<T>(
mainScope.launch { mainScope.launch {
withContext(Dispatchers.IO) { withContext(Dispatchers.IO) {
val asyncResult: Deferred<T?> = async { val asyncResult: Deferred<T?> = async {
action.invoke() try {
action.invoke()
} catch (e: Exception) {
e.printStackTrace()
null
}
} }
withContext(Dispatchers.Main) { withContext(Dispatchers.Main) {
afterActionDatabaseListener?.invoke(asyncResult.await()) afterActionDatabaseListener?.invoke(asyncResult.await())