Winapi Win32消息队列有多深?

Winapi Win32消息队列有多深?,winapi,message-queue,Winapi,Message Queue,一个标准窗口的队列包含多少消息?队列溢出时会发生什么情况 GetMessage和亲戚的文档没有说明这一点,PeekMessage只为某些类别的消息提供是/否,而不是消息计数 表示队列是使用内存映射文件实现的,并且没有消息计数限制,但该页面是关于WinCE的。这是否也适用于桌面Win32?默认情况下为10000,但可以通过注册表进行调整 如果队列溢出,PostMessage将失败 此处的文档: 如MSDN文章所述,如果您需要担心消息队列的大小,最好重新设计您的应用程序。涵盖2000/XP-了解Vi

一个标准窗口的队列包含多少消息?队列溢出时会发生什么情况

GetMessage
和亲戚的文档没有说明这一点,
PeekMessage
只为某些类别的消息提供是/否,而不是消息计数


表示队列是使用内存映射文件实现的,并且没有消息计数限制,但该页面是关于WinCE的。这是否也适用于桌面Win32?默认情况下为10000,但可以通过注册表进行调整

如果队列溢出,PostMessage将失败

此处的文档:


如MSDN文章所述,如果您需要担心消息队列的大小,最好重新设计您的应用程序。

涵盖2000/XP-了解Vista吗?我刚刚在Vista Business SP1机器上查看了该文章中列出的注册表项,它设置为10000。不过,我不知道这是否是决定Vista上队列长度的唯一因素。我不知道,但可能不会有什么不同。Vista并没有那么革命性,我不认为……不过还有一件事——如果你想将消息队列用作另一个线程提供的队列,我想你会对结果感到失望。您将得到一个无响应的GUI。我们公司在这项失败的设计技术方面有很多经验。你好,科里,谢谢你的回答。上述限制和注册表项(可以调整)也适用于Windows 8;我们的设备驱动程序正在发布消息,几分钟后,一个玩具Flash应用程序陷入困境。