MessageEnumerator.RemoveCurrent Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Remove a mensagem atual da fila e retorna a mensagem para o aplicativo de chamada. Remover a mensagem a exclui da fila.
Sobrecargas
RemoveCurrent() |
Remove a mensagem atual de uma fila transacional ou não transacional e retorna a mensagem para o aplicativo de chamada. Não há tempo limite especificado para que uma mensagem chegue na fila. |
RemoveCurrent(MessageQueueTransaction) |
Remove a mensagem atual de uma fila transacional e retorna a mensagem para o aplicativo de chamada. Não há tempo limite especificado para que uma mensagem chegue na fila. |
RemoveCurrent(MessageQueueTransactionType) |
Remove a mensagem atual de uma fila e retorna a mensagem para o aplicativo de chamada. Não há tempo limite especificado para que uma mensagem chegue na fila. |
RemoveCurrent(TimeSpan) |
Remove a mensagem atual da fila e retorna a mensagem para o aplicativo de chamada. Se houver uma mensagem a ser removida, o método a retornará imediatamente. Caso contrário, o método aguardará o tempo limite especificado para que uma nova mensagem chegue. |
RemoveCurrent(TimeSpan, MessageQueueTransaction) |
Remove a mensagem atual de uma fila transacional e retorna a mensagem para o aplicativo de chamada. Se houver uma mensagem a ser removida, o método a retornará imediatamente. Caso contrário, o método aguardará o tempo limite especificado para que uma nova mensagem chegue. |
RemoveCurrent(TimeSpan, MessageQueueTransactionType) |
Remove a mensagem atual de uma fila e retorna a mensagem para o aplicativo de chamada. Se houver uma mensagem a ser removida, o método a retornará imediatamente. Caso contrário, o método aguardará o tempo limite especificado para que uma nova mensagem chegue. |
Comentários
O comportamento descrito para essas sobrecargas só será aplicável se a instância de MessageEnumerator for recuperada usando o GetMessageEnumerator2. Não use GetMessageEnumerator para recuperar uma instância de MessageEnumerator, pois esse método foi preterido.
RemoveCurrent()
Remove a mensagem atual de uma fila transacional ou não transacional e retorna a mensagem para o aplicativo de chamada. Não há tempo limite especificado para que uma mensagem chegue na fila.
public:
System::Messaging::Message ^ RemoveCurrent();
public System.Messaging.Message RemoveCurrent ();
member this.RemoveCurrent : unit -> System.Messaging.Message
Public Function RemoveCurrent () As Message
Retornos
Um Message que faz referência à primeira mensagem disponível na fila.
Comentários
RemoveCurrent remove e retorna a mensagem no local atual do cursor.
Se você estiver usando o diário de fila, a remoção da mensagem fará com que uma cópia seja mantida na fila do diário, assim como o método Receive da classe MessageQueue faz.
Quando você remove a mensagem atual, o cursor é movido para a próxima mensagem. Você não precisa ligar para MoveNext depois de ligar para RemoveCurrent.
Se você chamar essa sobrecarga em uma fila transacional, o Enfileiramento de Mensagens criará uma única transação interna.
Confira também
Aplica-se a
RemoveCurrent(MessageQueueTransaction)
Remove a mensagem atual de uma fila transacional e retorna a mensagem para o aplicativo de chamada. Não há tempo limite especificado para que uma mensagem chegue na fila.
public:
System::Messaging::Message ^ RemoveCurrent(System::Messaging::MessageQueueTransaction ^ transaction);
public System.Messaging.Message RemoveCurrent (System.Messaging.MessageQueueTransaction transaction);
member this.RemoveCurrent : System.Messaging.MessageQueueTransaction -> System.Messaging.Message
Public Function RemoveCurrent (transaction As MessageQueueTransaction) As Message
Parâmetros
- transaction
- MessageQueueTransaction
O objeto MessageQueueTransaction que especifica a transação na qual a mensagem será removida.
Retornos
Um Message que faz referência à primeira mensagem disponível na fila.
Exceções
O parâmetro transaction
é null
.
Comentários
RemoveCurrent remove e retorna a mensagem no local atual do cursor, usando o contexto de transação interno definido pelo parâmetro transaction
.
Se você estiver usando o diário de fila, a remoção da mensagem fará com que uma cópia seja mantida na fila do diário, assim como o método Receive da classe MessageQueue faz.
Ao trabalhar com filas transacionais, uma reversão de uma transação faz com que todas as mensagens removidas por uma chamada RemoveCurrent sejam retornadas para a fila. A remoção não é irreversível até que a transação seja confirmada.
Quando você remove a mensagem atual, o cursor é movido para a próxima mensagem. Você não precisa ligar para MoveNext depois de ligar para RemoveCurrent.
Confira também
Aplica-se a
RemoveCurrent(MessageQueueTransactionType)
Remove a mensagem atual de uma fila e retorna a mensagem para o aplicativo de chamada. Não há tempo limite especificado para que uma mensagem chegue na fila.
public:
System::Messaging::Message ^ RemoveCurrent(System::Messaging::MessageQueueTransactionType transactionType);
public System.Messaging.Message RemoveCurrent (System.Messaging.MessageQueueTransactionType transactionType);
member this.RemoveCurrent : System.Messaging.MessageQueueTransactionType -> System.Messaging.Message
Public Function RemoveCurrent (transactionType As MessageQueueTransactionType) As Message
Parâmetros
- transactionType
- MessageQueueTransactionType
Um dos valores MessageQueueTransactionType, descrevendo o tipo de contexto de transação a ser associado à mensagem.
Retornos
Um Message que faz referência à primeira mensagem disponível na fila.
Exceções
O parâmetro transactionType
não é um dos membros MessageQueueTransactionType.
Comentários
RemoveCurrent remove e retorna a mensagem no local atual do cursor, usando um contexto de transação definido pelo parâmetro transactionType
.
Especifique Automatic
para o parâmetro transactionType
se já houver um contexto de transação externo anexado ao thread que você deseja usar para receber a mensagem. Especifique Single
se você quiser receber a mensagem como uma única transação interna. Você pode especificar None
se quiser receber uma mensagem de uma fila transacional fora de um contexto de transação.
Se você estiver usando o diário de fila, a remoção da mensagem fará com que uma cópia seja mantida na fila do diário, assim como o método Receive da classe MessageQueue faz.
Ao trabalhar com filas transacionais, uma reversão de uma transação faz com que todas as mensagens removidas por uma chamada RemoveCurrent sejam retornadas para a fila. A remoção não é irreversível até que a transação seja confirmada.
Quando você remove a mensagem atual, o cursor é movido para a próxima mensagem. Você não precisa ligar para MoveNext depois de ligar para RemoveCurrent.
Confira também
Aplica-se a
RemoveCurrent(TimeSpan)
Remove a mensagem atual da fila e retorna a mensagem para o aplicativo de chamada. Se houver uma mensagem a ser removida, o método a retornará imediatamente. Caso contrário, o método aguardará o tempo limite especificado para que uma nova mensagem chegue.
public:
System::Messaging::Message ^ RemoveCurrent(TimeSpan timeout);
public System.Messaging.Message RemoveCurrent (TimeSpan timeout);
member this.RemoveCurrent : TimeSpan -> System.Messaging.Message
Public Function RemoveCurrent (timeout As TimeSpan) As Message
Parâmetros
- timeout
- TimeSpan
O intervalo de tempo para aguardar a chegada de uma mensagem na fila.
Retornos
Um Message que faz referência à primeira mensagem disponível na fila.
Exceções
O valor especificado para o parâmetro timeout
é inválido.
O tempo limite expirou.
Comentários
RemoveCurrent remove e retorna a mensagem no local atual do cursor. Se o cursor estiver no final da fila, essa sobrecarga do método aguardará até que uma mensagem esteja disponível ou o intervalo especificado pelo parâmetro timeout
tenha expirado.
Se você estiver usando o diário de fila, a remoção da mensagem fará com que uma cópia seja mantida na fila do diário, assim como o método Receive da classe MessageQueue faz.
Quando você remove a mensagem atual, o cursor é movido para a próxima mensagem. Você não precisa ligar para MoveNext depois de ligar para RemoveCurrent.
Se você chamar essa sobrecarga em uma fila transacional, o Enfileiramento de Mensagens criará uma única transação interna.
Confira também
Aplica-se a
RemoveCurrent(TimeSpan, MessageQueueTransaction)
Remove a mensagem atual de uma fila transacional e retorna a mensagem para o aplicativo de chamada. Se houver uma mensagem a ser removida, o método a retornará imediatamente. Caso contrário, o método aguardará o tempo limite especificado para que uma nova mensagem chegue.
public:
System::Messaging::Message ^ RemoveCurrent(TimeSpan timeout, System::Messaging::MessageQueueTransaction ^ transaction);
public System.Messaging.Message RemoveCurrent (TimeSpan timeout, System.Messaging.MessageQueueTransaction transaction);
member this.RemoveCurrent : TimeSpan * System.Messaging.MessageQueueTransaction -> System.Messaging.Message
Public Function RemoveCurrent (timeout As TimeSpan, transaction As MessageQueueTransaction) As Message
Parâmetros
- timeout
- TimeSpan
O intervalo de tempo para aguardar a remoção da mensagem.
- transaction
- MessageQueueTransaction
O objeto MessageQueueTransaction que especifica o contexto da transação para a mensagem.
Retornos
Um Message que faz referência à primeira mensagem disponível na fila.
Exceções
O valor especificado para o parâmetro timeout
é inválido.
O parâmetro transaction
é null
.
O tempo limite expirou.
Comentários
RemoveCurrent remove e retorna a mensagem no local atual do cursor. Se o cursor estiver no final da fila, essa sobrecarga do método aguardará até que uma mensagem esteja disponível ou o intervalo especificado pelo parâmetro timeout
tenha expirado.
Ao trabalhar com filas transacionais, uma reversão de uma transação faz com que todas as mensagens removidas por uma chamada RemoveCurrent sejam retornadas para a fila. A remoção não é irreversível até que a transação seja confirmada.
Se você estiver usando o diário de fila, a remoção da mensagem fará com que uma cópia seja mantida na fila do diário, assim como o método Receive da classe MessageQueue faz.
Quando você remove a mensagem atual, o cursor é movido para a próxima mensagem. Você não precisa ligar para MoveNext depois de ligar para RemoveCurrent.
Confira também
Aplica-se a
RemoveCurrent(TimeSpan, MessageQueueTransactionType)
Remove a mensagem atual de uma fila e retorna a mensagem para o aplicativo de chamada. Se houver uma mensagem a ser removida, o método a retornará imediatamente. Caso contrário, o método aguardará o tempo limite especificado para que uma nova mensagem chegue.
public:
System::Messaging::Message ^ RemoveCurrent(TimeSpan timeout, System::Messaging::MessageQueueTransactionType transactionType);
public System.Messaging.Message RemoveCurrent (TimeSpan timeout, System.Messaging.MessageQueueTransactionType transactionType);
member this.RemoveCurrent : TimeSpan * System.Messaging.MessageQueueTransactionType -> System.Messaging.Message
Public Function RemoveCurrent (timeout As TimeSpan, transactionType As MessageQueueTransactionType) As Message
Parâmetros
- timeout
- TimeSpan
O intervalo de tempo para aguardar a remoção da mensagem.
- transactionType
- MessageQueueTransactionType
Um dos valores MessageQueueTransactionType, descrevendo o tipo de contexto de transação a ser associado à mensagem.
Retornos
Um Message que faz referência à primeira mensagem disponível na fila.
Exceções
O valor especificado para o parâmetro timeout
é inválido.
O tempo limite expirou.
O parâmetro transactionType
não é um dos membros MessageQueueTransactionType.
Comentários
RemoveCurrent remove e retorna a mensagem no local atual do cursor, usando um contexto de transação definido pelo parâmetro transactionType
. Se o cursor estiver no final da fila, essa sobrecarga do método aguardará até que uma mensagem esteja disponível ou o intervalo especificado pelo parâmetro timeout
tenha expirado.
Especifique Automatic
para o parâmetro transactionType
se já houver um contexto de transação externo anexado ao thread que você deseja usar para receber a mensagem. Especifique Single
se você quiser receber a mensagem como uma única transação interna. Você pode especificar None
se quiser receber uma mensagem de uma fila transacional fora de um contexto de transação.
Se você estiver usando o diário de fila, a remoção da mensagem fará com que uma cópia seja mantida na fila do diário, assim como o método Receive da classe MessageQueue faz.
Ao trabalhar com filas transacionais, uma reversão de uma transação faz com que todas as mensagens removidas por uma chamada RemoveCurrent sejam retornadas para a fila. A remoção não é irreversível até que a transação seja confirmada.
Quando você remove a mensagem atual, o cursor é movido para a próxima mensagem. Você não precisa ligar para MoveNext depois de ligar para RemoveCurrent.