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

Вниз

TApplication.ProcessMessages в консоли ?   Найти похожие ветки 

 
sydenis   (2007-11-21 20:35) [0]

Если консольное приложение сильно нагружает систему, как в нём периодически давать поработать остальным в очереди сообщений?

У меня ррограмма в цикле ждёт пока закончится другой процесс. Когда это реализуешь в форме, то нет проблем -TApplication.ProcessMessages всё отрабатывает. А в консоли встаём намертво.


 
Reindeer Moss Eater ©   (2007-11-21 20:40) [1]

отдать тики другим процессам - периодический sleep


 
sydenis   (2007-11-21 22:14) [2]

как раз это и не получается...
Речь идёт о подключении к инету. Запускаю ф-ю RasDial, она сразу возвращается и прога переходит к следующим операторам. А реально подключение устанавливается ещё некоторое время... У меня дальше идёт RasGetConectionState, sleep на 0.5сек и Application.ProcessMessages в цикле пока не будет либо RASC_connected либо не истечёт таймаут. И тока потом начинаются обращения в инет.  В форме (где есть Application) это прокатывает, а в консоли - нет...


 
Reindeer Moss Eater ©   (2007-11-21 22:17) [3]

Application.ProcessMessages к загрузке/разгрузке системы не имеет ни малейшего отношения. А чтобы не крутить пустые циклы вызывай расдиал в синхронном режиме.


 
sydenis   (2007-11-21 22:35) [4]


> Application.ProcessMessages к загрузке/разгрузке системы
> не имеет ни малейшего отношения

игра слов

> А чтобы не крутить пустые циклы вызывай расдиал в синхронном
> режиме

а это как?  по крайней мере дельфиский help советует именно вариант с циклом, про синхронный режим там ничего нет...


 
homm ©   (2007-11-21 22:38) [5]

> [0] sydenis   (21.11.07 20:35)
> Если консольное приложение сильно нагружает систему, как
> в нём периодически давать поработать остальным в очереди
> сообщений?

Если приложение консольное, у него нет очереди сообщений.


 
Reindeer Moss Eater ©   (2007-11-21 22:43) [6]

An optional notification handler that receives progress notifications during the connection operation. If the RasDial call specifies a notification handler, the call is asynchronous; otherwise, it is synchronous.


 
sydenis   (2007-11-21 23:03) [7]

If the RasDial call specifies a notification handler, the call is asynchronous
упс блин  ;))   то есть типа ему не надо callback функцию передавать и он станет синхронным?  это дело! Большой сэнкс будем пробовать
а про цикл - это про RasHagUp написано было - там не отвертеться...



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

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

Наверх




Память: 0.48 MB
Время: 0.016 c
2-1195670411
greengeneral
2007-11-21 21:40
2007.12.16
MaxLength в StringGrid


15-1194730016
Leonid Troyanovsky
2007-11-11 00:26
2007.12.16
Самые распространенные дельфийские заблуждения


11-1181646969
Nikfel
2007-06-12 15:16
2007.12.16
Как сделать ждущий и спящий режим


2-1195648487
kudatsky
2007-11-21 15:34
2007.12.16
Ограничение на количество открытых DBF-файлов


15-1195137044
Reindeer Moss Eater
2007-11-15 17:30
2007.12.16
Приколы реализации ADO в D7