Size: a a a

Android Developers

2020 April 22

GT

Green Triangle in Android Developers
а, точно. Я пост же делаю перед обновлением 😂
источник

GT

Green Triangle in Android Developers
представим, что post в livedat'у происходит после обновления) async становится актуальным?)
источник

Q

QMan in Android Developers
нет
источник

Q

QMan in Android Developers
ты же не параллелишь задачи, ты соблюдаешь очередность
источник

Q

QMan in Android Developers
пост не может быть позже обновления, в твоём случае
источник

GT

Green Triangle in Android Developers
val a = getFromLocalDataSource // получение локальных данных
updateLocalDataSource() // обновление бд с сервера
liveData.postValue(a) // пост в лайв дату данных из первого шага

- вот здесь, чтобы запустить обновление параллельно, нужен будет async?
источник

Q

QMan in Android Developers
async + await
источник

GT

Green Triangle in Android Developers
QMan
async + await
если не нужно ждать результата c updateLocalDataSource()?
источник

GK

Gennady Kurbesov in Android Developers
QMan
Мне нравится Glide
Говорят он тяжеловесный
источник

Q

QMan in Android Developers
ты же незнаешь что у тебя быстрее выполнится, к примеру
источник

Q

QMan in Android Developers
Gennady Kurbesov
Говорят он тяжеловесный
объемный, но быстрее Picasso
источник

GT

Green Triangle in Android Developers
QMan
ты же незнаешь что у тебя быстрее выполнится, к примеру
спасибо, я уже понял, что чем-то пахнет код. Вопрос нужно было иначе поставить: "как с помощью корутины запустить отдельный тред на обновление данных? (ждать результата обновления не нужно)"
источник

Q

QMan in Android Developers
да, async позволяет запусти сразу все задачи в скоупе параллельно
источник

GT

Green Triangle in Android Developers
QMan
да, async позволяет запусти сразу все задачи в скоупе параллельно
спасибо 👌
источник

Q

QMan in Android Developers
ты просто пролетаешь весь блок кода в скоупе
источник

Q

QMan in Android Developers
в твоем случае этот один async, в конце, не имеет смысла
источник

GT

Green Triangle in Android Developers
QMan
в твоем случае этот один async, в конце, не имеет смысла
погоди, как это пролетают 🤔
viewModelScope.launch {
   with(Dispatchers.IO) {
///...
   }
}

в этом скоупе все команды будут выполняться последовательно, right?
источник

Q

QMan in Android Developers
val first = async { dosomething }
val second = async { dosomething }
val result = first.await() + second.await()

first и second будут выполнены параллельно, но результат будет ожидать обоих
источник

Q

QMan in Android Developers
Green Triangle
погоди, как это пролетают 🤔
viewModelScope.launch {
   with(Dispatchers.IO) {
///...
   }
}

в этом скоупе все команды будут выполняться последовательно, right?
в его случае - да
источник

GT

Green Triangle in Android Developers
все, теперь все встало на свои места. Спасибо
источник