Есть ли способ обмениваться очередью сообщений между несколькими потоками или иначе читать очередь сообщений другого потока без использования перехватчиков?Обмен очередями сообщений между потоками (в Windows)
ответ
Сообщения в очереди сообщений могут быть дифференцированы на основе окна, для которого они предназначены, но я не думаю, что сообщения могут быть дифференцированы на основе встроенного потока - полей просто нет в Структура MSG - поэтому я не думаю, что вы можете делиться очередью по нескольким потокам.
Это оставляет вам решение для мониторинга без крючка.
Я уверен, что вы могли бы заглянуть в другую очередь потоков, но проблема в том, что вы в основном опросили; поэтому вы будете пропускать сообщения.
У вас есть влияние на нити, которые вы хотите прочитать? если это так, вы можете заставить их повторно передать свои сообщения вам.
Помимо этого, я не вижу способа сделать это.
Теоретически да , и я вижу, где вы собираетесь с этим, но это не решение, которое я ищу. – 2009-04-23 17:32:21
GetMessage и PeekMessage только читают сообщения для текущего потока, вы не можете использовать их для чтения сообщений, отправленных во входную очередь, принадлежащую другому потоку.
Попробуйте присоединиться к очереди ввода потоков, используя AttachThreadInput, что может работать.
- 1. Перемещение сообщений между очередями
- 2. Обмен объектами между потоками
- 3. Обмен данными между потоками
- 4. Обмен потоками между процессами?
- 5. асинхронный обмен данными между потоками
- 6. Обмен информации между потоками с использованием мьютекса против сообщений
- 7. Python: обмен списком между потоками
- 8. Обмен объем транзакций между потоками
- 9. Разница между очередями сообщений и почтовыми ящиками
- 10. Обмен переменными между потоками в Tensorflow
- 11. Обмен данными между потоками в C
- 12. Обмен данными между двумя потоками в java
- 13. Обмен блокируемым ресурсом между потоками в Rust
- 14. Обмен переменной между потоками в JAVA
- 15. Разница между инфраструктурой Executor и очередями сообщений, такими как JMS
- 16. Обмен очередями с ipyparallel cluster
- 17. Обмен многими очередями среди процессов в Python
- 18. Android: Обмен списками между двумя потоками
- 19. NSPrivateQueueConcurrencyType Core Data и обмен объекты между потоками
- 20. Обмен дескриптором сокета между несколькими потоками
- 21. Обмен данными (уровень класса) между несколькими потоками
- 22. Обмен данными и блокировка между потоками
- 23. понимание объектов QThread - обмен данными между потоками
- 24. STM32 Discovery Обмен переменными между потоками
- 25. Обмен ссылкой на экземпляр черты между потоками
- 26. Обмен несколькими объектами между потоками и флагами в java
- 27. Отправка сообщений между потоками в C#
- 28. Обмен очередями между процессами с использованием вложенных классов (Python)
- 29. Блокировка сообщений в очереди с очередями Windows Azure
- 30. Проблема TransactionScope с очередями сообщений
Вы говорите о сообщениях в окне, не так ли? Поскольку термин «очередь сообщений» часто используется для MSMQ. – Lucero
Да ... но это почти всегда плохая идея. Почему бы вам не описать, что вы пытаетесь сделать? – Shog9
@ Lucero: Правильно – 2009-04-23 17:35:20