169 похожих чатов

День добрый. Есть задача: надо выполнить пул тасков, но одновременно

можно только 2 таска. Написал для этого дела простую suspend функцию, но IDE кидает warning на runBlocking "Inappropriate blocking method call". ЧЯДНТ?
suspend fun doTasks(tasks: List<Int>) {
val parts = tasks.chunked(2)

for (part in parts) {
runBlocking {
for(task in part) {
launch {
println("DO TASK $task")
delay(1_000)
}
}
}
}
}

6 ответов

8 просмотров

Можно для этого семафор использовать

Сергей- Автор вопроса
radmir
Можно для этого семафор использовать

Так а смысл, это точно такая же блокировка, просто lint не поймёт и не будет ругаться. Цель понять, прав ли линт в данном случае и надо ли это как-то изменить. Если заменить runBlocking на launch { }.join(), то тоже ругаться не будет

А почему функция suspend если там блокинг калл?

Сергей- Автор вопроса
radmir
А почему функция suspend если там блокинг калл?

Она должна будет вызываться из другой саспенд функции

Сергей
Она должна будет вызываться из другой саспенд функ...

Из саспенд функции можно обычные блокирующие вызывать

Похожие вопросы

Обсуждают сегодня

Типа вызывать GetParent и проверять на соответствие GetModuleHandle?
The Bird of Hermes
67
Do any of you guys have interesting projects one could join? I'm a Middle Full-Stack developer (JS/TS, React & Node)
Lev Shapiro
40
$res = json_decode($наша строка из респонса); $res1 = array_map(fn($o) => $o->name, $res->breadcrumbs[0]->entities); Как такое будет на Хаскеле?.. В начале весь джейсон, в ко...
Хаскель Моисеевич Гопник
27
В чем сила брат, в NASM или FASM?
Isaac Kleiner
18
Вопрос по диагностике ошибок (я знаю в чем, в данном конкретном примере, я знаю, как исправить, пример модельный, понятно, что в реальности бывает намного запутаннее). module...
ⰄⰎⰋⰐⰐⰑⰛⰤⰧⰧⰩⰄ ⰊⰑⰁⰓⰡⰛⰦⰕⰫ
11
А чем вам питонисты не угодили?😂
.
79
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
52
Хтось використовував Vapor на Windows?
Jaroshevskii
15
Какое виндузовое сообщение приходит TTabSheet, что риэлайняться контролы на нем, даже у которых парент другой? Ситуация: открываю форму - кнопок нет, перелистываю на другой т...
Катерина Свиридова
7
Тут кста кто-нибудь NeoVim использует?
Simple Sorcerer
13
Карта сайта