Задать вопрос
@NickName7331

C#(Unity) — Чем можно заменить бесконечный цикл for?

Наткнулся на проблему, что при использовании бесконечного цикла ( for(; ;) ), игра просто зависает. Из-за чего это происходит? И есть ли альтернативы этому циклу? Буду рад помощи
  • Вопрос задан
  • 1394 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Software-testing.ru
    Программирование на C# для тестировщиков
    10 недель
    Далее
Решения вопроса 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Корутины и событийная модель.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
mindtester
@mindtester Куратор тега C#
http://iczin.su/hexagram_48
хорошо сформулированный вопрос, содержит не менее половины ответа


при использовании бесконечного цикла ( for(; ;) ), игра просто зависает. Из-за чего это происходит?


по тому что нет выхода из цикла... неужели трудно догадаться?

это классическая ошибка. и не надо его ни чем заменять.. просто надо из него выходить (break или return по какому то разумному условию)

ps

если вы уже пытались предусмотреть выход, но он не происходит - осталось полшага до гениального озарения - условие выхода не выполняется
Ответ написан
Комментировать
Morpheus_God
@Morpheus_God
do
while
или while(true)
Ответ написан
@mefutu
Скорее всего виноват не цикл. Если вы выполняете (отрисовку кадров, логику)в одном потоке, то конечно будут провисания.
Как вариант: разбить на разные threads. Либо использовать др движок, например: monogame, unity...
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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