Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Скорость выполнения C#

1.8K
22 июня 2011 года
Death Knight
139 / / 19.02.2006
делаю программу в которой будет отсчитываться таймер заданный пользователем.
Придумал как это сделать двумя методами, хотелось бы услышать который из них будет быстрее и почему ну и вооОБЩЕ кОМЕенТАРии МОжЕТ еЩЕ Что еСТЬ....
первый вариант:
 
Код:
numHour.Value = Convert.ToInt32(ourtime.Text) / 3600;
            numMin.Value = (Convert.ToInt32(ourtime.Text) % 3600) / 60;
            numSec.Value = Convert.ToInt32(ourtime.Text) - numHour.Value * 3600
                                                            - numMin.Value * 60;


второй вариант:

Код:
if (numSec.Value != 0)
                numSec.Value--;
            if (numSec.Value == 0 && numMin.Value > 0)
            {
                numMin.Value--;
                numSec.Value = 59;
            }
            if (numHour.Value > 0 && numMin.Value == 0 && numSec.Value == 0)
            {
                numHour.Value--;
                numMin.Value = 59;
                numSec.Value = 59;
            }


numHour.Value - отобрадение на форме часов
numMin.Value - отобрадение на форме минут
numSec.Value - секунд
14
24 июня 2011 года
Phodopus
3.3K / / 19.06.2008
ЧеТа Я нЕ вИжУ эКвИваЛЕнтНОстИ пОвЕдЕнИя этИХ ваРИАнтОв вООбще
1.8K
24 июня 2011 года
Death Knight
139 / / 19.02.2006
так в них нету эквивалентности.
 
Код:
ourtime - это Лейбл в котором храниться общее время истечения таймера в секундах
дальше идут компоненты NumericUpDown
numHour.Value - отобрадение на форме часов
numMin.Value - отобрадение на форме минут
numSec.Value - секунд

код который в первом посте выполняеться на втором таймера каждую секунду, пока не завершится общее время т е первый таймер, и он меняет значения NumericUpDown полей на убывания, как обратный отсчет.

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

а второй вариант путем сравнений уменьшает NumericUpDown поля, сразу секунды, по ист 60 сек минуты на 1 по ист 60 минут час на 1, так вот хотелось бы знать какой метод будет работать быстрее и почему. ну и еще варианты какие есть мб более быстрые чем эти два.... Надеюсь сейчас все поянтно...
14
24 июня 2011 года
Phodopus
3.3K / / 19.06.2008
2й вариант быстрее
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог