PragmaGames
@PragmaGames
Увлекаюсь Unity.

Как использовать корутины и спокойно спать по ночам?

После того как я узнал о существовании корутин я начал их использовать везде, корутина которая вызывает сразу еще несколько корутин и тд, я просто утонул в море из корутин. Вопрос состоит в следующем, насколько накладно использовать корутины для процессора ? Когда их лучше не использовать, когда их лучше использовать и почему ? С точки зрения затрат ресурсов чем они лучше или хуже например этого

float Timer = 5.0f;

void update()
{
    Timer -= Time.deltaTime;
}


Я читал, что корутины нельзя использовать в циклах, так как yield return new WaitForSeconds(wait); создает долговечный объект в памяти, что значит долговечный ? В моем понимании это объект который переживет сборщик мусора несколько раз.

И вообще, нормально то, что у меня в одном объекте активны сразу несколько корутин, а таких объектов достаточно много, либо это нужно упрощать ?
  • Вопрос задан
  • 42 просмотра
Пригласить эксперта
Ответы на вопрос 1
MANAB
@MANAB
Разрабатываю на C#: Web, Desktop, Gamedev
Больше объектов - больше засорения памяти - чаще вызывается garbage collector - чаще микрофризы в игре.
Ну и если ты уже столкнулся с корутинами из корутин и сложностью их дебага - значит уже наверное overдофига их и стоит уменьшать их использование или упрощать их.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы