2009-04-10 13 views
4

Wie würde ich mit Giftnachrichten umgehen, wenn WCF nicht verwendet wird? Der unten stehende Code erstellt eine Schleife, und ich war neugierig, ob MSMQ ein System zur Verfügung gestellt hat, um automatisch mit Giftnachrichten umzugehen.Behandlung von MSMQ-Giftnachrichten

Antwort

3

Ich glaube nicht, dass es eine einfache Möglichkeit gibt, Giftnachrichten mit rohen System.Messaging-Klassen zu behandeln. Ich denke, die einfachste Lösung besteht darin, die "TimeToBeReceived" -Eigenschaft für eine Nachricht festzulegen, aber das ist nicht perfekt, da Sie möglicherweise gültige Nachrichten verlieren, wenn der Empfänger offline ist. Ich habe irgendwo gelesen, dass Sie in MSMQ mit PInvoke eine echte Poison-Message-Behandlung durchführen können, konnte aber keine Ressourcen finden.

Ich fand diesen Artikel mit einigen Ideen, wie man Giftnachrichten manuell handhabt. Es könnte einige Ideen bieten:

http://www.cogin.com/articles/SurvivingPoisonMessages.php

+0

Recht so soll ich mein eigenes Schema implementieren. – James