Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.01.13;
Скачать: CL | DM;

Вниз

Сообщение Windows о смене суток   Найти похожие ветки 

 
Углук ©   (2007-06-17 18:10) [40]


>  неразбериху, в казалось бы, простейшую задачу..

Разберитесь...станете умнее


 
Eraser ©   (2007-06-17 19:00) [41]

> [39] Углук ©   (17.06.07 18:08)

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


 
Углук ©   (2007-06-17 19:44) [42]


> Eraser ©   (17.06.07 19:00) [41]

Совет принят .


 
homm ©   (2007-06-17 21:22) [43]

> Ваш  способ предполагает каждую минуту операции проверки
> времени.
> Это значит, Вы не пытаетесь писать оптимальные программы,
> а пишете "в лоб". И поэтому мне как-то фиолетово, + или
> - Вы изволили присудить мне в качестве своей оценки

Ветку читал? Помоему там подробно изложено почему я так предложил делать.

> Мой способ один раз вычисляет временную разницу, переводит
> в микросекунды, и преспокойно устанавливает её в интервал
> таймера- после запуска программы, - а после бла бла бла бла

Дак вот и нужно писать то, что ты предлагаешь, а то что в [11] чушь и феловек далекий, от преобразований фурье поймет запросто.


 
homm ©   (2007-06-17 21:23) [44]

> чушь и феловек далекий

чушь, и человек далекий


 
Углук ©   (2007-06-17 21:53) [45]


> Ветку читал? Помоему там подробно изложено почему я так
> предложил делать.

А если программа проработает больше суток? "один раз поставить" не сработает.

Касательно свойства Interval: имеет тип Cardinal - это 9 миллиардов.

Почему [11] чушь? Пока я сам подробно изложил свой метод решения, а от Вас слышу оскорбления, ни основанные ни  на чем. Плюс вы придумали нерабочий вариант.


 
homm ©   (2007-06-18 07:26) [46]

> Касательно свойства Interval: имеет тип Cardinal - это 9
> миллиардов.

Какое отношение имеет тип к опустимому интервалу значений, при которых функция будет работать? Это разные вещи.


> Почему [11] чушь?

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


 
Anatoly Podgoretsky ©   (2007-06-18 08:41) [47]


> тип Cardinal - это 9 миллиардов.

Обнови знания в справке Дельфи


 
Virgo_Style ©   (2007-06-18 13:08) [48]

Я бы воспользовался таймером, а чтобы убрать погрешность, ставил бы его на половину интервала до полночи, потом опять и опять... А когда интервал станет совсем небольшим, можно проверять хоть каждую секунду или вообще в цикле. Надеюсь, погрешность, хоть и ужасная, меньще 100% )


 
Anatoly Podgoretsky ©   (2007-06-18 16:20) [49]

> Virgo_Style  (18.06.2007 13:08:48)  [48]

Никакой разницы нет разбиваешь ли ты интервал на части или нет, неужели ты думаешь, что таймер работает по принципу Intervel = Interval - 1


 
Углук ©   (2007-06-19 15:30) [50]


> Углук ©   (15.06.07 02:10) [15]
> Еще: подсчитать, сколько времени от запуска программмы пройдет
> до смены суток. Это нетрудно. Изменить интервал таймера.
>  После первого срабатывания изменить интервал таймера на
> указанное мной число.


> homm ©   (18.06.07 07:26) [46]


> 86400000 миллисекунд.


 
Углук ©   (2007-06-19 15:32) [51]

property Interval: Cardinal;
> > тип Cardinal - это 9 миллиардов


Ошибся


 
Углук ©   (2007-06-19 15:32) [52]

property Interval: Cardinal;
> > тип Cardinal - это 9 миллиардов


Ошибся


 
DVM ©   (2007-06-19 16:36) [53]

Не понимаю, зачем вам так нужет таймер? Что сложно каждую секунду время/дату проверять? Не грузит это процессор совершенно, даже если 100 раз в секунду проверять. Таймеры - это лишние проблемы, это своего рода такие ненадежные костыли в любой программе.


 
Anatoly Podgoretsky ©   (2007-06-19 16:47) [54]

> DVM  (19.06.2007 16:36:53)  [53]

Как предлагаешь?


 
DVM ©   (2007-06-19 17:10) [55]


> Как предлагаешь?

Я хотел сказать, что таймер не нужен для отсчета интервала размером с сутки. Им надо секунды отсчитывать а не сутки.

Если под сменой суток понимать момент когда меняется дата (а причина изменения даты тут уже не играет роли) - то все же элементарно. При старте программы или в любой другой нужный момент запоминаем дату. Раз в секунду (опять же по тому же самому таймеру) проверяем текщую дату. Как только она станет другой - сутки сменились. И не надо ставить таймер на гигантские интервалы.

Можно и вообще без таймера, но это посложнее будет - например, в потоке крутить цикл.


 
Eraser ©   (2007-06-19 17:55) [56]

> [55] DVM ©   (19.06.07 17:10)


> Можно и вообще без таймера, но это посложнее будет - например,
> в потоке крутить цикл.

можно, но это уже из мухи по воробьям, для такой операции выделять целый поток не целесообразно.


 
Anatoly Podgoretsky ©   (2007-06-19 19:30) [57]

> DVM  (19.06.2007 17:10:55)  [55]

Это естественно будет работать, а вот насчет надо ли ставить на большие интервалы, так это вопрос вкуса. Поток - ничего сложного и более оптимального, хотя бы из-за точности, приоритет много выше чем для таймерных сообщений. Нагрузка тоже минимальная и побочный эффект - для любителей крутить циклы для организации паузы - это отсутствие психологической проблемы со 100 процентной нагрузкой на ЦПУ.



Страницы: 1 2 вся ветка

Текущий архив: 2008.01.13;
Скачать: CL | DM;

Наверх




Память: 0.58 MB
Время: 0.018 c
15-1196840159
Unknown user
2007-12-05 10:35
2008.01.13
Многомониторность


3-1189165817
keymaster
2007-09-07 15:50
2008.01.13
Как получить из oracle refcursor (ADO)


2-1197377079
Бэтман
2007-12-11 15:44
2008.01.13
Проблема с кодировкой


15-1196713425
Rouse_
2007-12-03 23:23
2008.01.13
Выдвигаем кандидатов на знак "Мастер Дельфи"


15-1197022693
Stanislav_
2007-12-07 13:18
2008.01.13
Интересно девки пляшут...