Аватар для garjo_099
1 / 1 / 1
Регистрация: 08.04.2014
Сообщений: 31

Синхронные и асинхронные сообщения!

24.04.2014, 01:21. Показов 5889. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Объясните максимально доходчиво, простыми словами, как это работает... синхронные- это обычные без очереди вроде бы ясно, а асинхронные не могу понять, "пощупать"...как они приходят непосредственно окну. Это всё равно, что растолкать очередь людей за хлебом??
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
24.04.2014, 01:21
Ответы с готовыми решениями:

Асинхронные сокеты Windows
Здравствуйте, форумчане! Интересует вопрос как можно синхронно отправить сообщение через асинхронный сокет? Нужно отправить сообщение...

Асинхронные сокеты , ф-я WSAAsyncSelect и ее применение
Доброго времени суток , возникла проблема с асинхронностью сокетов , а именно функцией WSAAnynsSelect . Первым параметром у нее дескриптор...

Синхронные/асинхронные операции
Подскажите примерный паттерн для приостановки скажем бесконечного цикла, который уже запущен каким либо событием с формы. Используя async...

4
Заблокирован
24.04.2014, 11:10
Смотря о каких сообщениях ты говоришь. Если ты про SendMessage и PostMessage, то SendMessage - синхронное так сказать, а PostMessage - асинхронное, если конечно можно так выразиться.
Фишка в том, что когда ты вызываешь функцию SendMessage, поток, из контекста которого ты вызвал эту функцию, будет ждать её возврата, в то время как PostMessage возвращает управление мгновенно.
Что же они делают? Да просто шлют Windows-ные сообщения окну, окно в свою очередь принимает их в функции - обработчике сообщений (евент хэндлер, кол бэк, он же WndProc обычно в хэлоу ворлд :-) ).
Так вот, SendMessage посылает сообщение и не возвращает управление до тех пор, пока WndProc Так сказать его не примет и не обработает, а PostMessage просто ставит сообщение в очередь и сражу же возвращает управление.

По поводу очереди людей за хлебом .... Ну...
Смари, ты идёшь с мамой.... не, лучше с папой, папа около магазина открыл баночку пивка, прикурил сигарету и не стал заходить с тобой в магазин за хлебом, сказав тебе - на сынок лавэ, метнись пока за хлебом в этот магаз, а я тебя выходе подожду, чтоб ты мне хлеб и сдачу отдал, как выйдешь, т.к. я тебе, малолетний, не доверяю и ты можешь со сдачей метнуться куда нибуть без меня В общем ты вышел из магазина и отдал папаше сдачу и хлеб - всё вы пошли дальше, дамой наверное. (это пример SendMessage).
А теперь тот же самый пример, но папаша открыв баночку пивка и прикурив сигарету, сказал тебе - метнись сынок в этот магаз за хлебом, я пойду домой пока, занесёшь потом его домой. Это как раз пример PostMessage, то есть он отправил тебя магаз и пошёл дальше по своим делам (поставил сообщение в очередь).
Надеюсь понятную сказку придумал
2
 Аватар для garjo_099
1 / 1 / 1
Регистрация: 08.04.2014
Сообщений: 31
24.04.2014, 14:58  [ТС]
newbie666, ты случайно не перепутал, а то у меня в книге(Петзольд) написано так
Часто асинхронные сообщения являются результатом вызова определенных функцийWindows или
непосредственным результатом вызова функции SendMessage. (Кроме этого, сообщения могут помещаться в
очередь сообщений посредством вызова функции PostMessage.)
А кроме функций пост и сенд в каких случаях ещё приходят асинхронные сообщения?
0
Заблокирован
24.04.2014, 15:17
Цитата Сообщение от garjo_099 Посмотреть сообщение
ты случайно не перепутал
нет, я ничего не перепутал, я не знаю, что в твоей книге понимается под асинхронными сообщениями. Сообщения Windoows, аля WM_USER, WM_TIMER И тд - это просто переменные, хранящие свой идентификатор, посылать в Windows сообщения на сколько я помню можно только посредствам SendMessage, PostMessage, PostThreadMessage и SendDlgItemMessage ...
0
 Аватар для Izual
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
24.04.2014, 16:45
Чисто по моему:
Синхронность это когда, к примеру с потоками(createThread) создали 3 потока, дали им задания в очерёдности и в той же очерёдности они их вернули. Но на деле обстоит по другому, например второй поток может вернуть решение раньше первого(т.е. имеется в виду первый - этот именно тот кому первую задачу дали), т.е. в этом случае синхронности нет...

newbie666, класс
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.04.2014, 16:45
Помогаю со студенческими работами здесь

Литература. Синхронные и асинхронные автоматы
Поделитесь пожалуйста литературой. Необходимо написать программу работы синхронного автомата, и еще асинхронного, в c++ к понедельнику, а я...

Клиент-сервер. Синхронные и асинхронные сокеты
Здравствуйте, в чем разница между синхронными и асинхронными сокетами? слышал что с асинхронным сокетом ненадо парится по поводу потоков....

Синхронные ScrollBox'ы
На форме лежат скроллбоксы, как сделать чтобы при прокрутке одного (вертикально, горизонтально) автоматом прокручивался и второй, ну и...

Синхронные двигатели
В политехе на лабораторных работах по электрическим машинам запускали синхронные движки с числом оборотов 3000 в минуту. Снимали всякие...

Синхронные запросы
Добрый вечер! Кто знает как "убить" синхронные запросы? У меня в консоли выходит сообщение что у меня данные передаются сихронно ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru