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á nenhum tempo limite especificado para uma mensagem chegar na fila. |
RemoveCurrent(MessageQueueTransaction) |
Remove a mensagem atual de uma fila transacional e retorna a mensagem ao aplicativo de chamada. Não há nenhum tempo limite especificado para uma mensagem chegar na fila. |
RemoveCurrent(MessageQueueTransactionType) |
Remove a mensagem atual de uma fila e retorna a mensagem ao aplicativo de chamada. Não há nenhum tempo limite especificado para uma mensagem chegar 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 ao 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 ao 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 será aplicável somente se a MessageEnumerator instância for recuperada usando o GetMessageEnumerator2. Não use GetMessageEnumerator para recuperar uma instância do 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á nenhum tempo limite especificado para uma mensagem chegar 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
Uma 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 registro em diário de fila, remover a mensagem fará com que uma cópia seja mantida na fila do diário, assim como o MessageQueue método da Receive classe.
Quando você remove a mensagem atual, o cursor é movido para a próxima mensagem. Você não precisa ligar MoveNext depois de chamar 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 ao aplicativo de chamada. Não há nenhum tempo limite especificado para uma mensagem chegar 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
Uma 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 transaction
parâmetro .
Se você estiver usando o registro em diário de fila, remover a mensagem fará com que uma cópia seja mantida na fila do diário, assim como o MessageQueue método da Receive classe.
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 MoveNext depois de chamar RemoveCurrent.
Confira também
Aplica-se a
RemoveCurrent(MessageQueueTransactionType)
Remove a mensagem atual de uma fila e retorna a mensagem ao aplicativo de chamada. Não há nenhum tempo limite especificado para uma mensagem chegar 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 de MessageQueueTransactionType, que descreve o tipo de contexto de transação associado à mensagem.
Retornos
Uma Message que faz referência à primeira mensagem disponível na fila.
Exceções
O parâmetro transactionType
não é um dos membros do MessageQueueTransactionType.
Comentários
RemoveCurrent remove e retorna a mensagem no local atual do cursor, usando um contexto de transação definido pelo transactionType
parâmetro .
Especifique Automatic
para o transactionType
parâmetro se já houver um contexto de transação externo anexado ao thread que você deseja usar para receber a mensagem. Especifique Single
se deseja receber a mensagem como uma única transação interna. Você pode especificar None
se deseja receber uma mensagem de uma fila transacional fora de um contexto de transação.
Se você estiver usando o registro em diário de fila, remover a mensagem fará com que uma cópia seja mantida na fila do diário, assim como o MessageQueue método da Receive classe.
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 MoveNext depois de chamar 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 a esperar uma mensagem chegar na fila.
Retornos
Uma 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 timeout
parâmetro expirou.
Se você estiver usando o registro em diário de fila, remover a mensagem fará com que uma cópia seja mantida na fila do diário, assim como o MessageQueue método da Receive classe.
Quando você remove a mensagem atual, o cursor é movido para a próxima mensagem. Você não precisa ligar MoveNext depois de chamar 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 ao 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 de espera para a mensagem ser removida.
- transaction
- MessageQueueTransaction
O objeto MessageQueueTransaction que especifica o contexto de transação para a mensagem.
Retornos
Uma 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 timeout
parâmetro expirou.
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 registro em diário de fila, remover a mensagem fará com que uma cópia seja mantida na fila do diário, assim como o MessageQueue método da Receive classe.
Quando você remove a mensagem atual, o cursor é movido para a próxima mensagem. Você não precisa ligar MoveNext depois de chamar RemoveCurrent.
Confira também
Aplica-se a
RemoveCurrent(TimeSpan, MessageQueueTransactionType)
Remove a mensagem atual de uma fila e retorna a mensagem ao 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 de espera para a mensagem ser removida.
- transactionType
- MessageQueueTransactionType
Um dos valores de MessageQueueTransactionType, que descreve o tipo de contexto de transação associado à mensagem.
Retornos
Uma 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 do MessageQueueTransactionType.
Comentários
RemoveCurrent remove e retorna a mensagem no local atual do cursor, usando um contexto de transação definido pelo transactionType
parâmetro . 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 timeout
parâmetro tenha expirado.
Especifique Automatic
para o transactionType
parâmetro se já houver um contexto de transação externo anexado ao thread que você deseja usar para receber a mensagem. Especifique Single
se deseja receber a mensagem como uma única transação interna. Você pode especificar None
se deseja receber uma mensagem de uma fila transacional fora de um contexto de transação.
Se você estiver usando o registro em diário de fila, remover a mensagem fará com que uma cópia seja mantida na fila do diário, assim como o MessageQueue método da Receive classe.
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 chamar MoveNext depois de chamar RemoveCurrent.