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

Вниз

Как работает PostMessage.   Найти похожие ветки 

 
Новичек ©   (2005-03-01 12:25) [0]

Здравствуйте, уважаеые Мастера.
Есть такой кусок кода:

procedure SendAnyMessage;
begin
 AnyPocedure;
 PostMessage(MainWnd, WM_Any, 0, 1);
 AnyFunction;
end;
procedure ReceiveAnyMessage(MSG: TMessage);
begin
 if MSG = WM_Any then ShowMessage("Zhopa");
end;


Вопрос:
Когда получит управление AnyFunction - сразу после PostMessage или подождет, пока выполнится обработчик ReceieAnyMessage?
Если AnyFunction получает управление, не дожидаясь выполнения обработчика сообщений, то, получается, что приложение разбивается на два потока?
Спасибо.


 
Anatoly Podgoretsky ©   (2005-03-01 12:27) [1]

Не получается так.


 
Димон   (2005-03-01 12:28) [2]

1. Сразу после PostMessage
2. Нет не разбивается. Выполнение кода, получившего сообщение произойщет когда ты обработаешь очередь сообщений.


 
Новичек ©   (2005-03-01 12:42) [3]


> Димон

Не совсем понял: приложение отвлечётся на ShowMessage в данном примере?


 
Думкин ©   (2005-03-01 12:43) [4]

>  [3] Новичек ©   (01.03.05 12:42)

Когда придет его время - таки да - отвлечется.


 
Новичек ©   (2005-03-01 12:45) [5]

Тады всё встало на свои места :-) Спасибо огромное, Мастера.


 
Димон   (2005-03-01 12:45) [6]


>  [3] Новичек ©   (01.03.05 12:42)

26 глава Рихтера. :))) Там офигительно про это написано. Пока не прочтешь будешь вечно спрашивать, что к чему.

Книгу в сети можешь найти. Есть вроде на сайте Подгорецкого.


 
Новичек ©   (2005-03-01 12:48) [7]


> Димон

Скачал уже. Сейчас посмотрю. Спасибо.


 
Димон   (2005-03-01 12:48) [8]


> Скачал уже. Сейчас посмотрю. Спасибо.

могу ошибаться с номером, но глава должна быть про оконные сообщения. В оглавлении см.


 
Новичек ©   (2005-03-01 12:52) [9]

Да, точно - глава 26, уже читаю :-)



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

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

Наверх




Память: 0.48 MB
Время: 0.033 c
3-1107330190
eger'
2005-02-02 10:43
2005.03.13
Как выташить значени поля из другой таблицы соеденив его...


3-1107935799
opoloxai
2005-02-09 10:56
2005.03.13
ADOTable.Refresh


1-1109201745
jcrush
2005-02-24 02:35
2005.03.13
Сравнить и заменить дополнить текстовые файлы в с каталоге


14-1109088492
}|{yk
2005-02-22 19:08
2005.03.13
Тестирование кода


4-1107253055
grigory
2005-02-01 13:17
2005.03.13
Как по процессу узнать заголовок окна?