Вниз
Скачать: CL | DM;

запуск в определенный момент времени !?   Найти похожие ветки 

 
YDV   (2003-04-13 19:26) [0]

доброго Вам времени суток !...

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

Может можно ето сделать как-нибудь инначе, с меньшими затратами времени проца ?

заранее спасибо за ответ !


 
sniknik ©   (2003-04-13 20:52) [1]

не проверяй постоянно а делай sleep(20мин*60сек*1000) между запусками.


 
Leo-pro   (2003-04-14 13:25) [2]

Используй Timer


 
YDV   (2003-04-14 17:27) [3]

спасибо за ответы !...

>sniknik:

с sleep реально помагло !!! получилось примерно так:

repeat
//...
sleep(1000);
if t=my_time then
if t<>was then begin
//...что-нибудь делаем
was:=t
end;
//...
until terminated;


>Leo-pro:

c Timer-ом у меня не получится:
через каждые 20 минут прога срабатывает и делает ресурсоемкие расчеты и передачи, кроме того еще должна отрабатывать несколько полезностей, которые могут выполнится одновременно с этими расчетами- вот и пришлось поток использовать.


 
Digitman ©   (2003-04-15 08:37) [4]

Для того, чтобы код.поток не "ел" процессорное время и в то же время мог оперативно реагировать на системные/прикладные события/сообщения, необходимо везде где это возможно избегать применения sleep(), а вместо этого задействовать системные объекты синхронизации (mutex, event, semaphore e.t.c) и ф-ции ожидания срабатывания объектов синхронизации


 
YDV   (2003-04-15 08:52) [5]

>Digitman:
Спасибо за уточнение !



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.021 c
1-60235
bkv
2003-06-03 15:05
2003.06.19
Необходимо из сервиса вызвать программу.


3-60093
Илайдж
2003-05-29 07:53
2003.06.19
При добавлении в поле базы строки размером > 255


9-60011
Sword-Fish
2003-01-12 23:50
2003.06.19
Работа с ресурсами


1-60211
qwerty2
2003-06-05 13:41
2003.06.19
для чего и когда использовать ShareMem?


1-60182
Цыганов Д.
2003-06-03 16:00
2003.06.19
Создать окно поверх всех остальных но не просто




   Наверх