Einzelnen Beitrag anzeigen

RSE

Registriert seit: 26. Mär 2010
254 Beiträge
 
Delphi XE Enterprise
 
#8

AW: Windows Message Loop Queue Kapazität

  Alt 2. Mär 2012, 10:34
Vielen Dank für die Aufklärung bzgl. Frage 1 MSMQ. Ich liebe es, wenn ähnliche aber dennoch verschiedene Technologien so gleich betitelt werden, dass man als "Anfänger" in diesen Technologien oder als Hilfesuchender einfach durcheinanderkommen muss.

Aktueller Beantwortungsstand:
  1. Beantwortet
  2. Im Kern beantwortet:
    Eine Begrenzung scheint nach Anzahl Messages zu existieren. Unklar: Wenn PostMessage aufgrund einer vollen Queue fehlschlägt, soll man es noch einmal probieren. Was muss in der Zwischenzeit geschehen, damit es beim zweiten Versuch überhaupt klappen kann? Hilft hier nur ProcessMessage(s)? Das fände ich für meinen Anwendungsfall echt blöd.
    Mein Anwendungsszenario:
    Ich reagiere auf Events einer Telefonanlage. Manchmal hängen mehrere davon in der Queue. Diese müssen in der korrekten Reihenfolge abgearbeitet werden. Muss ich nun in einem Event-Handler eine Messagebox anzeigen, dann würden an dieser Stelle die anderen wartenden Events abgearbeitet (das modale Fenster der Messagebox arbeitet mit ProcessMessages) und der Rest des Event-Handlers würde erst nach den anderen Events abgearbeitet. Deshalb sende ich mir eine Message und zeige die Meldung erst an, wenn ich die Message erhalten habe (also asynchron). Werde ich meine Message an der Stelle nicht los, weil die Queue voll ist, kann ich sie also auch nicht leeren, um die Message loszuwerden.
Ich werde jetzt die Markierung "Offene Frage" entfernen, da der Kern beantwortet ist. Wenn jemend noch weitere Kenntnisse/Ideen zur weiterführenden Frage aus 2. hat, würde ich mich natürlich darüber freuen, wenn diese gepostet werden.
"Seit er seinen neuen Computer hat, löst er alle seine Probleme, die er vorher nicht hatte."
  Mit Zitat antworten Zitat