diff --git a/app/src/main/java/io/legado/app/help/storage/BackupRestoreLock.kt b/app/src/main/java/io/legado/app/help/storage/BackupRestoreLock.kt new file mode 100644 index 000000000..b14562bf6 --- /dev/null +++ b/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 withLock(action: suspend () -> T): T { + return mutex.withLock { + action() + } + } +}