2008-09-23 5 views
13

Сколько сообщений занимает очередь для стандартного окна? Что происходит, когда очередь переполняется?Насколько глубока очередь сообщений Win32?

Документация для GetMessage и родственники ничего не говорят об этом, а PeekMessage дает только да/нет для определенных классов сообщений, а не количество сообщений.

This page говорит, что очереди реализованы с использованием файлов с отображением памяти и что нет предела количества сообщений, но эта страница о WinCE. Это относится и к настольному Win32?

ответ

13

10000 по умолчанию, но его можно настроить с помощью реестра.

Если очередь переполнена, PostMessage терпит неудачу.

Документация здесь:

PostMessage function on MSDN

+0

Что охватывает 2000/XP - любая идея о Vista? – 2008-09-23 19:52:35

+0

Я просто посмотрел на раздел реестра, указанный в этой статье на машине Vista Business SP1, и установлен на 10000. Я не знаю, является ли это единственным фактором при определении длины очереди на Vista. – Branan 2008-09-23 19:55:52

3

Как указано в статье MSDN, если вам нужно беспокоиться о размере очереди сообщений, вы могли бы быть лучше перепроектирования приложения.

Смежные вопросы