Здравствуйте, kov_serg, Вы писали:
_>Это слишком простой пример. Тут никаких особых гарантий не надо, т.к. они не используют общих ресурсов и даже не выделяют их для выполнения зачачи. _>Простой вопрос кто должен выделять и освободлать ресурсы исполнитель или прораб тот кто поставил задачу должен предоставить ресурсы для её выполнения?
Что-то не понимаю я тебя. Правила всё те же, что и для обычных функций. Ресурсы могут быть выделены вызывающей корутиной, а освобождаться в вызываемой, а может быть и наоборот. Но позаботиться об освобождении ресурсов, в добротной программе, должен тот, кто их выделяет. При необходимости можно использовать RAII. Только при чём здесь корутины вообще? Это общие правила, которые действуют в равной степени как для корутин, так и для обычных функций. До тех пор, пока язык гарантирует детерминированность времён жизни объектов, прикрутить RAII поверх этого не составляет никаких проблем.
Ну или набросай пример, который заставляет тебя сомневаться. А то так можно долго обсуждать, не понимая друг друга.
--
Справедливость выше закона. А человечность выше справедливости.