Re[8]: SendMessage vs PostMessage
От: algod Украина  
Дата: 21.02.03 07:49
Оценка:
Здравствуйте, Рек, Вы писали:

Рек>


Рек>Мелкие терминологические замечания:

Рек>...
Но ты же меня понял? Тогда — зачем эти вечные споры о терминологии

Рек>Кстати вопрос:

Рек>Если делать SM из другого потока (не из потока, создавшего окно),
Рек>то прямого вызова оконной процедуры происходить не будет?
Будет! Читаем МСДН:
If the specified window was created by a different thread, the system switches to that thread and calls the appropriate window procedure. Messages sent between threads are processed only when the receiving thread executes message retrieval code. The sending thread is blocked until the receiving thread processes the message.

SM гарантированно возвращает код "оконной процедуры". Если в этот момент оконная проца другого потока подвиснет — подвиснешь и ты.

(для справки есть еще SendMessageTimeout — тоже самое, что SM, но более расчитано на работу с многозадачностью )

Рек>Всё будет проходить через очередь?

Рек>Вариант И GetMessage в этом случае вернёт 0?
Рек>Или GetMessage всё равно, выгребая sm-cообщение из очереди, вызовет
Рек>оконную процедуру изнутри напрямую, не возвращая управление?

См. выше....
There is no bug
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.