tags:

views:

31

answers:

1

Is there a way to indicate a MSMQ message should not be delivered before a certain time?

Essentially I want to be able to put messages back in the queue to be reprocessed in the future, say ten minutes from now. I would do this when the message processing has had some kind of error that I expect to be fixed in the near future.

+2  A: 

I don't think MSMQ itself has a way to accomplish this. What I have seen work, though it is kind of a kludge, is to set up another queue as a "retry queue" and just check it for messages less often (every 10 minutes in your example). Possibly tacking on some kind of retry count so you know when to abandon all hope.

Gregg
+1, not a kludge at all - this is a message that shouldn't be sent for 10 minutes. When messages are sent and when they are read are client concerns.
Jeff Sternal