2009-10-09 11 views
7

¿Puede alguien decirme si MSMQ (mediante transacciones) admite consumidores en competencia? Básicamente, tengo varios hilos que quitan mensajes de una sola cola. Solo quería asegurarme de que esto funcionaría, ya que a veces MSMQ se comporta de manera diferente a lo esperado.MSMQ consumidor de la competencia

+1

¿Estás mirando o recibiendo mensajes? –

+0

Recibo mensajes. –

Respuesta

6

Si está llamando Recibir de múltiples procesos en la misma máquina en la misma cola, no recibirá el mismo mensaje más de una vez, a menos que restituya una transacción de una lectura.

Si usa 2008/w7 y recibe en varias máquinas desde la misma cola remota dentro de una transacción, no debería ver el mismo mensaje dos veces (nuevamente, a menos que retroceda).

Si está utilizando un enumerador para ver los mensajes y luego eliminar uno interesante (a través de RemoveCurrent), debe esperar ver una excepción de que el mensaje ya ha sido eliminado si otro consumidor lo recogió.

Si está en 2003/XP, no puede hacer recepciones remotas en una transacción, por lo que todas las apuestas están desactivadas.