Horis 2 年之前
父節點
當前提交
e3d049b3d5

+ 25 - 0
app/src/main/java/io/legado/app/utils/AsyncHandler.kt

@@ -0,0 +1,25 @@
+package io.legado.app.utils
+
+import io.legado.app.help.globalExecutor
+import java.util.logging.Handler
+import java.util.logging.LogRecord
+
+class AsyncHandler(private val delegate: Handler) : Handler() {
+
+    override fun publish(record: LogRecord?) {
+        globalExecutor.execute {
+            delegate.publish(record)
+        }
+    }
+
+    override fun flush() {
+        delegate.flush()
+    }
+
+    override fun close() {
+        delegate.close()
+    }
+
+}
+
+fun Handler.asynchronous() = AsyncHandler(this)

+ 2 - 2
app/src/main/java/io/legado/app/utils/LogUtils.kt

@@ -69,7 +69,7 @@ object LogUtils {
             } else {
                 Level.OFF
             }
-        }
+        }.asynchronous()
     }
 
     private val consoleHandler by lazy {
@@ -85,7 +85,7 @@ object LogUtils {
             } else {
                 Level.OFF
             }
-        }
+        }.asynchronous()
     }
 
     fun upLevel() {