и добавляют результат в коллекцию в родительской корутине. Как сделать такую работу тред сейф или она уже тред сейф?
главное, чтобы ты слишком рано не выполнял действие, которое должно быть выполнено после завершения всех дочерних корутин
Используй потокобезопасные коллекции. Это не тредсейф
2 корутины добавляют элемент в конец коллекции .add(). Тред сейф сделает это синхронно, один за одним. В плохом же сценарии все они будут ломиться в один индекс
А какие есть в котлине?
2 потока не должны менять одновременно непотокобезопасную коллекцию. Судя по тому что ты говоришь, тебе подойдет ConcurrentHashMap (то же самое что и в Java)
В котлине свои абстрации типа акторов, но я бы не советовал если хорошо это не понимаешь. ConcurrentHashMap гарантировано не будет ломаться на потоках
Почему? Котлин решения ферст так сказать
Ну тогда акторы например
Обсуждают сегодня