有人知道什么时候对 Room Android 使用异步一次性查询吗?

Does anybody knows when to use asynchronous one-shot queries with Room Android?

有人知道什么时候对 Room Android 使用异步一次性查询吗?

@Delete
public ListenableFuture<Integer> deleteUsers(List<User> users);

我是该领域的新手,我不知道在哪里可以找到这些信息。如果有人知道用例,请与我们分享。

谢谢。

这是我用于 Room 异步 one-shot 查询的 UseCase 接口:

interface SimpleOneShotUseCase<out Response, out Error, in UseCaseParams> : UseCase<Response, Error, UseCaseParams> {

    override suspend operator fun invoke(params: UseCaseParams): Either<Error, Response> =
    withContext(Dispatchers.IO) {
        run(params = params)
    }

    suspend fun run(params: UseCaseParams): Either<Error, Response>
}

interface UseCase<out Response, out Error, in UseCaseParams> {

    suspend fun observe(params: UseCaseParams): Flow<Either<Error, Response>> = flow { emit(invoke(params)) }

    suspend operator fun invoke(params: UseCaseParams): Either<Error, Response>
}