gpt4 book ai didi

android-asynctask - Android Room + AsyncTask

转载 作者:行者123 更新时间:2023-12-04 01:36:07 25 4
gpt4 key购买 nike

我的团队开发了一个新的 Android 应用程序,它广泛使用了 Room。

我不确定我们是否正确使用 AsyncTask。

我们不得不在 AsyncTasks 中包装所有对 insert/update/delete 的调用,这导致了大量的 AsyncTasks。所有进入 Room 的调用都来自后台服务。事件或片段无法直接访问 Room - 它们通过 LiveData 获取所有内容。

插入一行的示例调用:

AsyncTask.execute(() -> myModelDAO.insertInstance(myModel));

在 DAO 中:
@Insert
void insertInstance(MyModel model);

最佳答案

要完成@CommonsWare 的回答,您可以使用 Executor在后台线程中执行 Room 查询的类。

Executor myExecutor = Executors.newSingleThreadExecutor();
myExecutor.execute(() -> {
myModelDAO.insertInstance(myModel)
});

Google 在其 Android 架构组件上展示了一个示例 guide .

关于android-asynctask - Android Room + AsyncTask,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46482423/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com