MessageEnumerator.RemoveCurrent Método

Definição

Remove a mensagem atual da fila e retorna a mensagem para o aplicativo de chamada. Remover a mensagem a exclui da fila.

Sobrecargas

Nome Description
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 é aplicável somente se a MessageEnumerator instância for recuperada usando o GetMessageEnumerator2. Não use GetMessageEnumerator para recuperar uma instância de MessageEnumerator como este 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 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 ligar 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 MessageQueueTransaction objeto 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 transaction parâmetro é 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 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 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 ligar 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 MessageQueueTransactionType valores, 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 transactionType parâmetro não é um dos MessageQueueTransactionType membros.

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 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 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 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 ligar 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 timeout parâmetro é 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 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 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 ligar 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 MessageQueueTransaction objeto 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 timeout parâmetro é inválido.

O transaction parâmetro é 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 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 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 ligar 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 MessageQueueTransactionType valores, 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 timeout parâmetro é inválido.

O tempo limite expirou.

O transactionType parâmetro não é um dos MessageQueueTransactionType membros.

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 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 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 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 ligar RemoveCurrent.

Confira também

Aplica-se a