Если, как и я, вы дрожите на месте цикла While (True), то вы тоже должны долго и долго думать о лучшем способе реорганизовать его. Я видел несколько различных реализаций, ни один действительно лучше, чем любой другой, например, комбинация делегатов таймера &.Лучший рефакторинг для страшного цикла While (True)
Итак, каким лучшим способом вы столкнулись или видели рефакторинг страшного цикла While (True)?
Редактировать: Как упоминалось в некоторых комментариях, мое намерение состояло в том, чтобы этот вопрос был рефакторингом «бесконечного цикла», например, запуск службы стиля Windows, где единственными условиями остановки были бы OnStop или фатальное исключение.
Я должен был сказать это лучше и подумал о том, чтобы вернуться к этому, но это непрерывный процесс обучения, поэтому я решил оставить вопрос, как это напоминание для меня. :) – 2008-10-30 23:02:26
Если вы «боитесь» пока (правда), вы должны писать очень упрощенные алгоритмы.Большинство современных алгоритмов требуют циклов с несколькими условиями выхода. Самый естественный способ сделать это - иметь внешний бесконечный цикл, а затем несколько условий выхода, которые выходят из цикла. Использование For-loops или while-conditions лучше всего работает, когда у вас есть только одно условие выхода. Хотя это наиболее распространенный случай, вряд ли это универсальная ситуация. – 2017-02-20 19:59:28