Описание тега message-loop

2 ответа

Как выйти из цикла сообщений потока?

Фоновый поток может быть настроен для получения оконных сообщений. Вы бы отправляли сообщения в ветку используя PostThreadMessage, Как правильно выйти из цикла сообщений? Фон Прежде чем вы сможете публиковать сообщения в фоновом потоке, поток должен…
04 май '12 в 15:11
2 ответа

Какой самый чистый способ уведомить GUI об обновлении в wxWidgets?

У меня есть небольшое приложение, которое должно обновлять элементы GUI, если какое-то событие происходит на более низких уровнях, скажем, сокет отключается или что-то в этом роде. В Windows я мог бы использовать PostMessage, который отправлялся бы …
15 окт '12 в 05:23
1 ответ

Создать дочернее окно в WM_CREATE, актуальность той же темы?

Типичным примером является создание дочернего окна в обратном вызове сообщения (WndProc) в сообщении WM_CREATE: LRESULT APIENTRY WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { ... switch (message) { case WM_CREATE: .... hwndChild[…
1 ответ

Окно цикла сообщений ( WndProc | While (GetMEssage)) в.NET Core

Я пытаюсь подписаться на оконные сообщения, используя.Net Core Я могу получать исходные сообщения, чтобы создать окно (через pinvoke) и уничтожить сообщения. Но после этого мои созданные окна блокируются и не получают никаких других сообщений. publi…
1 ответ

Как протолкнуть цикл сообщений в WinForms?

В WPF я могу нажать цикл сообщений, используя Dispatcher.PushFrame, Что является эквивалентом в WinForms? Я знаком с DoEvents но это должно быть вызвано в цикле, который может вращать процессор вместо очень эффективного подхода, состоящего только в …
01 фев '16 в 04:41
1 ответ

Qt QTcpSocket: Как предотвратить мертвую блокировку в сигнале readyRead?

Мне нужна помощь в Qt на Windows 7. Кажется, что Qt readyRead() Сигнал генерируется асинхронным вызовом процедуры, который приводит к одновременному выполнению кода, но в том же потоке. В моем примере у меня есть очередь, к которой должен получить д…
27 янв '12 в 17:29
1 ответ

Неизвестное сообщение Windows 0xC052

Я работаю над проблемой ( Как определить форму, открытую внутри приложения) и наткнулся на сообщение Windows, которое не могу понять: 0xC052. Это первое сообщение, которое я получаю в MessageFilter при открытии формы. Но так как я не нашел никакой с…
21 сен '15 в 07:57
2 ответа

Как программно выйти из второго цикла сообщений?

Я пытаюсь создать второй цикл сообщений для асинхронной обработки / фильтрации сообщений низкого уровня в C#. Он работает, создавая скрытую форму, выставляя ее свойство Handle для подключения, и запускает второй цикл сообщений в отдельном потоке. На…
1 ответ

Threading 101: Что такое диспетчер?

Однажды я вспомнил этот материал наизусть. Со временем мое понимание ослабло, и я хочу его освежить. Насколько я помню, любое так называемое однопоточное приложение имеет два потока: а) основной поток, имеющий указатель на основную точку входа или т…
09 фев '10 в 20:13
1 ответ

Кто отправил / опубликовал WM_MOUSEMOVE?

При использовании цикла сообщений Win32 API (или любой другой абстракции более высокого уровня, такой как System.Windows.Forms.IMessageFilter) чтобы получить сообщение, как мне узнать, кто / какой элемент управления / какой компонент / какой фрагмен…
14 янв '14 в 09:07
1 ответ

Почему я не могу получить сообщение WM_DESTROY или WM_CLOSE вне оконной процедуры?

Я хотел прочитать сообщения в моем цикле сообщений прямо перед отправкой их в мою оконную процедуру. Большинство сообщений, которые я пытался прочитать, были прочитаны правильно, но когда я закрываю окно, WM_CLOSE или же WM_DESTROY сообщение не може…
28 сен '14 в 14:39
3 ответа

Роль цикла сообщений в этой программе? и еще несколько вопросов

Следующий код работает нормально. Он выдает сообщение, когда пользователь нажимает клавишу. Но есть определенные вещи, о которых я не знаю. Какова роль Message Loop здесь? Я прочитал это призвание SetWindowsHookEx(...) регистрирует функцию в окнах, …
29 май '12 в 08:13
2 ответа

Erlang сообщения цикла

Как работают циклы сообщений в erlang, синхронизируются ли они при обработке сообщений? Насколько я понимаю, цикл начнется с "получения" сообщения, а затем выполнит что-то и выполнит еще одну итерацию цикла. Так что должно быть синхронизировано? пра…
31 май '10 в 11:59
2 ответа

Цикл сообщений в MFC

Я немного узнал о Win32 API, но теперь я хочу изучать MFC. В моей книге они сказали, что CWinApp класс управляет основным потоком приложения, но я не могу найти что-то вроде GetMessage, DispatchMessage функции в этом классе. Так как это может начать…
22 сен '14 в 10:51
2 ответа

Перемещение и изменение размера окна мешает MsgWaitForMultipleObjects

У меня есть приложение, которое зацикливает сообщения, используя MsgWaitForMultipleObjects для перехвата дополнительных событий при прокачке пользовательских сообщений. Кажется, что как только окно перемещается или изменяется, DefWindowProc начинает…
05 окт '09 в 07:27
1 ответ

Запуск диалогов Android из другого потока без цикла сообщений

В SurfaceView я отправляю новый поток, который рисует на холсте в стандартном цикле "LockCanvas-Draw-unlockCanvasAndPost". (обратите внимание, что поток не содержит цикл сообщений). Как показать Android стандартный диалог из этой темы? Поскольку пот…
1 ответ

Сообщение MFC в диалоговом окне

Я создал диалоговое приложение MFC. Теперь я хочу использовать сообщение, но не могу его найти. Я читал, что MFC создаст его для меня, но он будет скрыт. так как я могу манипулировать messageloop? мне нужно сообщение, чтобы получать события от моего…
17 янв '13 в 10:55
0 ответов

Почему необходимо PostQuitMessage

Довольно простой вопрос. Мне было просто любопытно, почему я бы использовал PostQuitMessage(0), чтобы вырваться из цикла сообщений, вместо того, чтобы просто делать что-то вроде: bool isRunning; case WM_DESTROY: { isRunning = false; break; } Честно …
11 июн '18 в 11:28
1 ответ

Горячая замена кода в Эрланге

Недавно я видел видео об Эрланге на InfoQ. В этом видео один из создателей представил, как заменить поведение цикла сообщений. Он просто отправлял сообщение, содержащее лямбду новой версии кода цикла сообщений, которое затем вызывалось вместо повтор…
03 июн '10 в 19:01
2 ответа

Можно ли создать цикл сообщений без создания окна в C++

Я работал с некоторой библиотекой Bluetooth, и для некоторого обратного вызова Bluetooth необходимо использовать цикл сообщений Windows. Но согласно моему требованию, мне нужно создать нормальную программу на C++ без какого-либо графического интерфе…
21 авг '18 в 06:39