Size: a a a

2019 March 28

BP

Bogdan Panchenko in Kotlin JVM
Алексей Овсянников
Честно говоря, я вообще подумал о том, что можно сделать скоуп и запускать в нем корутины на каждую задачу, просто в скоупе указать, что поток один (если нет прицела на мультиплатформу и не принципиально, чтобы задачки строго последовательно выполнялись)
Тогда смысл корунтин? Это в будущем может запутать
источник

BP

Bogdan Panchenko in Kotlin JVM
Разве если там есть точки саспенда еще имеет смысл
источник

АО

Алексей Овсянников in Kotlin JVM
когда нужно запускать задачки - я запускаю задачки:)
источник

АО

Алексей Овсянников in Kotlin JVM
когда нужно последовательно выполнять команды - я пишу последовательную исполнялку задач
источник

АО

Алексей Овсянников in Kotlin JVM
ну и да, саспенды никто не отменял, но тут-то и кроется разница между описанными подходами
источник

BP

Bogdan Panchenko in Kotlin JVM
Алексей Овсянников
ну и да, саспенды никто не отменял, но тут-то и кроется разница между описанными подходами
Если он работает в том же диспатчере - будет только хуже
источник

BP

Bogdan Panchenko in Kotlin JVM
Хотя я внутрь сильно не смотрел, но  переключения не бесплатное, а переключаться на один и тот же поток так себе
источник

АО

Алексей Овсянников in Kotlin JVM
не понял мысль
источник

АО

Алексей Овсянников in Kotlin JVM
если он работает в одном потоке и вы выбрали путь корутин - просто будут ситуации, когда они обрабатываются параллельно
источник

BP

Bogdan Panchenko in Kotlin JVM
Не может такого быть
источник

АО

Алексей Овсянников in Kotlin JVM
переключение не бесплатное, вообще ничего бесплатного нет:) но там не так много платить, если задачи тяжеловесные или переключений немного
источник

BP

Bogdan Panchenko in Kotlin JVM
Один поток не запаралелить ничего
источник

АО

Алексей Овсянников in Kotlin JVM
Bogdan Panchenko
Не может такого быть
параллельно != в одно время
источник

BP

Bogdan Panchenko in Kotlin JVM
Алексей Овсянников
параллельно != в одно время
А
источник

АО

Алексей Овсянников in Kotlin JVM
в итоге всё сводится к формулировке задачи, а точнее важно ли, чтобы обработка была строго последовательной
источник

BP

Bogdan Panchenko in Kotlin JVM
Алексей Овсянников
переключение не бесплатное, вообще ничего бесплатного нет:) но там не так много платить, если задачи тяжеловесные или переключений немного
Вот именно, так что решения спорное, имхо. Может привести к тормозам но делать также как и последовательный
источник

BP

Bogdan Panchenko in Kotlin JVM
Алексей Овсянников
в итоге всё сводится к формулировке задачи, а точнее важно ли, чтобы обработка была строго последовательной
+, я к этому и вел, для разных задач свое решение)
источник

АО

Алексей Овсянников in Kotlin JVM
это, мне кажется, вполне очевидно:)
источник

AO

Alexey Otts in Kotlin JVM
Да тут можно было бы взять актор как частный случай канала
источник

AO

Alexey Otts in Kotlin JVM
И не парится с диспетчерами
источник