HapeLee 5 ماه پیش
والد
کامیت
c63cf8921d
1فایلهای تغییر یافته به همراه15 افزوده شده و 0 حذف شده
  1. 15 0
      app/src/main/java/io/legado/app/help/storage/BackupRestoreLock.kt

+ 15 - 0
app/src/main/java/io/legado/app/help/storage/BackupRestoreLock.kt

@@ -0,0 +1,15 @@
+package io.legado.app.help.storage
+
+import kotlinx.coroutines.sync.Mutex
+import kotlinx.coroutines.sync.withLock
+
+internal object BackupRestoreLock {
+
+    private val mutex = Mutex()
+
+    suspend fun <T> withLock(action: suspend () -> T): T {
+        return mutex.withLock {
+            action()
+        }
+    }
+}