DiBR
обычная кошмарная
домашняя страничка
Ежекакполучится околокомпьютерное обозрение
 
  <<<  предыдущий Tech! archive #3 следующий  >>>  
   Последний выпуск       Архив       Ссылки       Полезности       humor.filtered       Фотки       О сайте   
          Это - достаточно беспорядочный архив сообщений конференций сети fidonet, которые на момент их прочтения мной показались полезными или интересными. Многие устарели, многие узкоспецифичны и малоинтересны, но может оказаться и что-то новое...
         
- __techs (2:5015/42) ----------------------------------------------- __techs -
Msg  : 3 of 1000                           Scn
From : Victor Pomortseff                   2:5080/68.12    24 Apr 96  08:40:20
To   : Boris Rudakov                                       28 Apr 96  04:26:38
Subj : Срочная перерисовка
-------------------------------------------------------------------------------
@AREA:SU.WINDOWS.PROG
Hello Boris.

19 Apr 96 22:31, Andrej Zajtsev wrote to Boris Rudakov:
AZ>>> ... закрыла диалог и начала довольно длинные вычисления.
BR>> Что, совсем не передавая управления Windows ? Это же плохо.
AZ> ИМХО все так делают. Выставил IDC_WAIT и вперед. Если уж очень долго,
[...]
BR>> Попробуй так, это совершенно стандартный подход.
AZ> Согласен, стандартный, но уж больно через зад.
AZ> Легче сделать обычный цикл обработки и обработать там все сообщения до
AZ> полного опустошения очереди после первого WM_PAINT. А потом переходить
AZ> к вычислениям.

В Win 3.1x проще всего в течении длительных процессов периодически "отдаваться"
виндоузовскому планировщику. Это можно сделать вызывая следующую функцию:

void CheckMsgQueue()
{
 MSG msg;

 while(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)){
   TranslateMessage(&msg);
   DispatchMessage(&msg);
 };
}

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

Victor

... Перед прочтением съесть...
--- А дед то - голый...
* Origin: Victor Pomortseff | vic@plm.rcupi.e-burg.su (2:5080/68.12)






<<<

архив dibr

>>>'