翻译《The Old New Thing》- Why do messages posted by PostThreadMessage disappear?

news2024/9/21 4:37:48

Why do messages posted by PostThreadMessage disappear? - The Old New Thing (microsoft.com)icon-default.png?t=N7T8https://devblogs.microsoft.com/oldnewthing/20090930-00/?p=16553

Raymond Chen 2008年09月30日


为什么 PostThreadMessage 发布的信息会消失?

        在显示用户界面的线程中,唯一一种您能够实际发送的消息是`WM_NULL`,而且这通常只是因为您出于某种原因需要唤醒消息循环。我经常遇到的一个常见问题是,人们使用`PostThreadMessage`向显示用户界面的线程发送消息,然后困惑为什么他们的消息从未被接收。

        实际上,消息确实被发送了。它被接收了,但随后就被丢弃了。

        这篇文章实际上是之前一篇标题为“模态循环会吞噬线程消息”的文章的重复,但我用一个更有助于搜索引擎优化的标题重新发表了它。既然我已经在这里了,我不妨对现有文章进行一些补充。

        在用户界面线程上,存在模态循环的明显地方是那些明确是模态的函数,比如`DialogBox`、`MessageBox`、`TrackPopupMenuEx(TPM_RETURNCMD)`或`DoDragDrop`。但还有一些不那么明显的模态循环,比如当您点击标题栏并按住鼠标按钮时运行的模态循环,或者当COM在等待一个跨线程调用完成时运行的模态循环。

        由于您无法控制这些模态循环,当它们调用`DispatchMessage`时,您的线程消息就会被简单地丢弃。

        如果您需要与也显示用户界面的线程可靠地通信,那么您应该创建一个隐藏的窗口,并向该窗口发送或发布消息。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1808589.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【上下界分析 差分数组】798得分最高的最小轮调

本文涉及知识点 差分数组 本题同解 C算法前缀和的应用:798得分最高的最小轮调 LeetCode798得分最高的最小轮调 给你一个数组 nums,我们可以将它按一个非负整数 k 进行轮调,这样可以使数组变为 [nums[k], nums[k 1], … nums[nums.lengt…

NetSuite精益实施 之 系统切换作业标准化

这个题目为近日所思,一直没有落笔。今天是端午假日,得空卸货。 标准化是精益实施的三个基础之一,在我们的项目实践中没有须臾忘记。在此我们不再赘述标准化为啥这么重要,更多来分享如何标准化。 在项目实施的各阶段中&#xff0…

【漏洞复现】宏景eHR pos_dept_post SQL注入漏洞

0x01 产品简介 宏景eHR人力资源管理软件是一款人力资源管理与数字化应用相融合,满足动态化、协同化、流程化、战略化需求的软件。 0x02 漏洞概述 宏景eHR pos_dept_post 接囗处存在SQL注入漏洞,未经过身份认证的远程攻击者利用此漏洞执行任意SQL指令,…

每日一题——Python实现PAT乙级1019 数字黑洞(举一反三+思想解读+逐步优化)

一个认为一切根源都是“自己不够强”的INTJ 个人主页:用哲学编程-CSDN博客专栏:每日一题——举一反三Python编程学习Python内置函数 Python-3.12.0文档解读 目录 我的写法 点评代码的优缺点: 时间复杂度: 空间复杂度&#…

数据结构:插入排序和希尔排序

插入排序 逆序的情况下: 时间复杂度:O(N^2) 空间复杂度:O(1) 顺序的情况下: 时间复杂度:O(N) 空间复杂度…

【Linux系统化学习】传输层——TCP协议

目录 预备知识 全双工协议 协议缓冲区 TCP协议 TCP协议格式 六个标志位 两个问题 确认应答机制 流量控制 超时重传机制 连接管理机制 CLOSE_WAIT状态 TIME_WAIT状态 滑动窗口 拥塞控制 延迟应答 捎带应答 粘包问题 TCP的异常情况 TCP小结 TCP/UDP协议对比…

首届IEEE RAS峰会,为什么大厂阿里、字节、腾讯都参加了?

"RAS in Data Centers 2024" 首届IEEE RAS(Reliability, Availability, and Serviceability,即可靠性、可用性和可维护性)在数据中心峰会在2024年6月11日至12日举行,地点设在美国加利福尼亚州圣克拉拉市的圣克拉拉万豪酒…

LangChain开发【NL2SQL】应用(few-shot优化)

前言 之前发布的博客LangGraph开发Agent智能体应用【NL2SQL】-CSDN博客,留了一个问题,对于相对复杂的sql(leetcode中等难度的sql题),gpt4o就力不从心了。这篇文章来讲一下优化 什么是few-shot 使用这些少量的、调整…

公安视频图像信息数据库及GA/T 1400视图库视频监控系统的使用场景

随着科技的快速发展,大数据、人工智能等新技术不断融入各行各业,为各行各业带来了前所未有的变革。在公安领域,GA/T 1400协议公安视频图像信息数据库的应用为视频监控场景提供了强有力的支持,极大地提升了公安工作的效率和准确性。…

排序-快排算法对数组进行排序

目录 一、问题描述 二、解题思路 1.初始化 2.将右侧小于基准元素移到左边 3.将左侧大于基准元素移到右边 4.重复执行上面的操作 5.对分好的左、右分区再次执行分区操作 6.最终排序结果 三、代码实现 四、刷题链接 一、问题描述 二、解题思路 快排算法实现数组排序&am…

算法金 | A - Z,115 个数据科学 机器学习 江湖黑话(全面)

大侠幸会,在下全网同名「算法金」 0 基础转 AI 上岸,多个算法赛 Top 「日更万日,让更多人享受智能乐趣」 机器学习本质上和数据科学一样都是依赖概率统计,今天整整那些听起来让人头大的机器学习江湖黑话 A - C A/B Testing (A/B …

保姆级讲解 Linux下FTP服务器的搭建、配置与管理

本来目录很长的 因为感觉不太美观 所以小标题都删掉了 本文介绍了 本地用户的FTP服务器搭建实例匿名用户的FTP服务器搭建实例虚拟用户的FTP服务器搭建实例企业常见类型搭建实验 配置与管理FTP服务器 配置与管理FTP服务器一、FTP相关知识二、项目设计与准备三、项目实施四、认识…

存内计算与扩散模型:下一代视觉AIGC能力提升的关键

目录 前言 视觉AIGC的ChatGPT4.0时代 扩散模型的算力“饥渴症” 存内计算解救算力“饥渴症” 结语 前言 ​ 在这个AI技术日新月异的时代,我们正见证着前所未有的创新与变革。尤其是在视觉内容生成领域(AIGC,Artificial Intelligence Generate…

python导入非当前目录(如:父目录)下的内容

在开发python项目时,通常会划分不同的目录,甚至不同层级的目录,这时如果直接导入不在当前目录下的内容时,会报如下的错误:ModuleNotFoundError: No module named miniai其实这里跟操作系统的环境变量很类似的&#xff…

less学习笔记

一、什么是less? Less是CSS预处理语言,可以使用变量、嵌套、运算等,便于维护项目CSS样式代码。 二、less安装 使用npm包管理工具,全局安装less包 npm install -g lessless安装好的同时,lessc也安装好了 通过 lessc -…

【图解IO与Netty系列】Netty核心组件解析

Netty核心组件解析 Bootstrap & ServerBootstrapEventLoop & EventLoopGroupChannelChannelHandler & ChannelPipeline & ChannelHandlerContextChannelHandlerChannelPipelineChannelHandlerContext ChannelFuture Bootstrap & ServerBootstrap Bootstra…

代码随想录算法训练营第36期DAY56

DAY56 套磁很顺利,发现又有书读了! 300最长递增子序列 朴素法,这个好想,但是不对,比如 0 1 0 3 2 3 我的算法会找出0 1 3作为答案,而不是0 1 2 3 可以看出,后面的状态依赖于前面的状态&am…

ELK组件

资源列表 操作系统 IP 主机名 Centos7 192.168.10.51 node1 Centos7 192.168.10.52 node2 部署ELK日志分析系统 时间同步 chronyc sources -v 添加hosts解析 cat >> /etc/hosts << EOF 192.168.10.51 node1 192.168.10.52 node2 EOF 部署Elasticsea…

Oracle10.2.0.1冷备迁移之_数据文件拷贝方式

由于阿里云机房要下架旧服务器&#xff0c;单位未购买整机迁移服务&#xff0c;且业务较老不兼容Oracle11g&#xff0c;所以新购买一台新服务器进行安装Oracle10.2.0.1 &#xff0c;后续再将数据迁移到新服务器上。 id 数据库版本 操作系统版本 实例名 源库 115.28.242.25…

[数据集][目标检测]厨房积水检测数据集VOC+YOLO格式88张2类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;88 标注数量(xml文件个数)&#xff1a;88 标注数量(txt文件个数)&#xff1a;88 标注类别数…