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

Вниз

Отслеживание ситемного времени.   Найти похожие ветки 

 
Андрей (Начинающий)   (2008-12-11 15:33) [0]

Как в приложении организовать проверку наступления определенной даты/времени?
Количество контрольных точек заранее неизвестно.
Пример:
- сегодня мне захотелось, чтобы завтра в 15.00, 18.00 мое приложение в это время сделало ...
- через час к этому добавилась еще одна контрольная точка в 17.00
- на след. день нужно ...
- ...
Органайзер одним словом :)


 
charoey_mag   (2008-12-11 15:38) [1]

TTimer?


 
Ega23 ©   (2008-12-11 15:46) [2]

1. Иметь список пар "время - действие".
2. Иметь таймер с интервалом (ну, например, секунда. Или 10 секунд.)

В обработчике таймера:
var
 i : Integer;
begin
 for i:= TaskList.Count-1 downto 0 do
 begin
   if TaskList[i].TaskDateTime<=Now then
   begin
     DoAction(TaskList[i].Action) ;
     TaskList.Delete(i);
   end;
 end;
end;


 
Андрей (Начинающий)   (2008-12-11 15:59) [3]


> Ega23

спасибо


 
Юрий Зотов ©   (2008-12-12 15:43) [4]

1. Иметь ОТСОРТИРОВАННЫЙ по времени список пар "время - действие".

2. Иметь таймер вообще без всякого интервала

3. При старте программы таймеру устанавливается интервал, равный времени первого действия минус текущее время.

4. При выполнении каждого действия таймеру устанавливается интервал, равный времени следующего действия минус текущее время.

=====================

И тогда таймер не будет тикать зря.


 
Андрей (Начинающий)   (2008-12-12 17:10) [5]


> И тогда таймер не будет тикать зря.

А чем плохо бесполезное тикание?


 
Сергей М. ©   (2008-12-12 17:19) [6]


> Андрей (Начинающий)   (12.12.08 17:10) [5]


Тик таймера требует доп.кванты времени, которые сист.планировщик обязан выделить кодовому потоку, обрабатывающему соотв.сообщение таймера.
Значит, другие кодовые потоки в системе недополучат эти временные кванты и будут выполнять возложенные на них функции менее эффективнго с т.з. производительности.



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
2-1228998782
Андрей (Начинающий)
2008-12-11 15:33
2009.01.25
Отслеживание ситемного времени.


1-1207561428
Yuri Btr
2008-04-07 13:43
2009.01.25
Отключить автопрокрутку в окне редактора Delphi


3-1213733259
Ulti
2008-06-18 00:07
2009.01.25
БД paradox


15-1227847536
Slider007
2008-11-28 07:45
2009.01.25
С днем рождения ! 28 ноября 2008 пятница


15-1227708896
Поросенок Винни-Пух
2008-11-26 17:14
2009.01.25
Богатства сомали