MessageEnumerator.RemoveCurrent Método

Definição

Remove a mensagem atual da fila e devolve a mensagem à aplicação que chama. Remover a mensagem elimina-a da fila.

Sobrecargas

Name Description
RemoveCurrent()

Remove a mensagem atual de uma fila transacional ou não transacional e devolve a mensagem à aplicação que chama. Não é especificado um tempo limite para que uma mensagem chegue à fila.

RemoveCurrent(MessageQueueTransaction)

Remove a mensagem atual de uma fila transacional e devolve a mensagem à aplicação que chama. Não é especificado um tempo limite para que uma mensagem chegue à fila.

RemoveCurrent(MessageQueueTransactionType)

Remove a mensagem atual de uma fila e devolve a mensagem à aplicação que chama. Não é especificado um tempo limite para que uma mensagem chegue à fila.

RemoveCurrent(TimeSpan)

Remove a mensagem atual da fila e devolve a mensagem à aplicação que chama. Se houver uma mensagem a remover, o método devolve-a imediatamente. Caso contrário, o método aguarda o timeout especificado para que uma nova mensagem chegue.

RemoveCurrent(TimeSpan, MessageQueueTransaction)

Remove a mensagem atual de uma fila transacional e devolve a mensagem à aplicação que chama. Se houver uma mensagem a remover, o método devolve-a imediatamente. Caso contrário, o método aguarda o timeout especificado para que uma nova mensagem chegue.

RemoveCurrent(TimeSpan, MessageQueueTransactionType)

Remove a mensagem atual de uma fila e devolve a mensagem à aplicação que chama. Se houver uma mensagem a remover, o método devolve-a imediatamente. Caso contrário, o método aguarda o timeout especificado para que uma nova mensagem chegue.

Observações

O comportamento descrito para estas sobrecargas é aplicável apenas se a MessageEnumerator instância for recuperada usando o GetMessageEnumerator2. Não use GetMessageEnumerator para recuperar uma instância de MessageEnumerator pois este método foi obsoleto.

RemoveCurrent()

Remove a mensagem atual de uma fila transacional ou não transacional e devolve a mensagem à aplicação que chama. Não é especificado um tempo limite para que uma mensagem chegue à fila.

public:
 System::Messaging::Message ^ RemoveCurrent();
public System.Messaging.Message RemoveCurrent();
member this.RemoveCurrent : unit -> System.Messaging.Message
Public Function RemoveCurrent () As Message

Devoluções

A Message que faz referência à primeira mensagem disponível na fila.

Observações

RemoveCurrent remove e devolve a mensagem na localização atual do cursor.

Se estiveres a usar journaling de fila, remover a mensagem faz com que uma cópia fique na fila de diário, tal como o MessageQueue método da Receive classe.

Quando remove a mensagem atual, o cursor é movido para a próxima mensagem. Não tens de ligar MoveNext depois de ligar RemoveCurrent.

Se chamar esta sobrecarga numa fila transacional, a Fila de Mensagens cria uma única transação interna.

Ver também

Aplica-se a

RemoveCurrent(MessageQueueTransaction)

Remove a mensagem atual de uma fila transacional e devolve a mensagem à aplicação que chama. Não é especificado um tempo limite para que uma mensagem chegue à 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 em que a mensagem será removida.

Devoluções

A Message que faz referência à primeira mensagem disponível na fila.

Exceções

O transaction parâmetro é null.

Observações

RemoveCurrent remove e devolve a mensagem na localização atual do cursor, usando o contexto interno da transação definido pelo transaction parâmetro.

Se estiveres a usar journaling de fila, remover a mensagem faz com que uma cópia fique na fila de diário, tal como o MessageQueue método da Receive classe.

Ao trabalhar com filas transacionais, uma reversão de uma transação faz com que quaisquer mensagens removidas por uma chamada RemoveCurrent sejam devolvidas à fila. A remoção não é irreversível até que a transação seja realizada.

Quando remove a mensagem atual, o cursor é movido para a próxima mensagem. Não tens de ligar MoveNext depois de ligar RemoveCurrent.

Ver também

Aplica-se a

RemoveCurrent(MessageQueueTransactionType)

Remove a mensagem atual de uma fila e devolve a mensagem à aplicação que chama. Não é especificado um tempo limite para que uma mensagem chegue à 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, descreve o tipo de contexto de transação a associar à mensagem.

Devoluções

A Message que faz referência à primeira mensagem disponível na fila.

Exceções

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

Observações

RemoveCurrent remove e devolve a mensagem na localização atual do cursor, usando um contexto de transação definido pelo transactionType parâmetro.

Especifique Automatic para o transactionType parâmetro se já existe um contexto de transação externo associado à thread que pretende usar para receber a mensagem. Especifique Single se quer receber a mensagem como uma única transação interna. Pode especificar None se quer receber uma mensagem de uma fila transacional fora do contexto de uma transação.

Se estiveres a usar journaling de fila, remover a mensagem faz com que uma cópia fique na fila de diário, tal como o MessageQueue método da Receive classe.

Ao trabalhar com filas transacionais, uma reversão de uma transação faz com que quaisquer mensagens removidas por uma chamada RemoveCurrent sejam devolvidas à fila. A remoção não é irreversível até que a transação seja realizada.

Quando remove a mensagem atual, o cursor é movido para a próxima mensagem. Não tens de ligar MoveNext depois de ligar RemoveCurrent.

Ver também

Aplica-se a

RemoveCurrent(TimeSpan)

Remove a mensagem atual da fila e devolve a mensagem à aplicação que chama. Se houver uma mensagem a remover, o método devolve-a imediatamente. Caso contrário, o método aguarda o timeout 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 esperar que uma mensagem chegue à fila.

Devoluções

A 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 expirou.

Observações

RemoveCurrent remove e devolve a mensagem na localização atual do cursor. Se o cursor estiver no final da fila, esta sobrecarga do método espera até que uma mensagem esteja disponível ou que o intervalo especificado pelo timeout parâmetro tenha expirado.

Se estiveres a usar journaling de fila, remover a mensagem faz com que uma cópia fique na fila de diário, tal como o MessageQueue método da Receive classe.

Quando remove a mensagem atual, o cursor é movido para a próxima mensagem. Não tens de ligar MoveNext depois de ligar RemoveCurrent.

Se chamar esta sobrecarga numa fila transacional, a Fila de Mensagens cria uma única transação interna.

Ver também

Aplica-se a

RemoveCurrent(TimeSpan, MessageQueueTransaction)

Remove a mensagem atual de uma fila transacional e devolve a mensagem à aplicação que chama. Se houver uma mensagem a remover, o método devolve-a imediatamente. Caso contrário, o método aguarda o timeout 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 esperar que a mensagem seja removida.

transaction
MessageQueueTransaction

O MessageQueueTransaction objeto que especifica o contexto da transação para a mensagem.

Devoluções

A 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 expirou.

Observações

RemoveCurrent remove e devolve a mensagem na localização atual do cursor. Se o cursor estiver no final da fila, esta sobrecarga do método espera até que uma mensagem esteja disponível ou que o intervalo especificado pelo timeout parâmetro tenha expirado.

Ao trabalhar com filas transacionais, uma reversão de uma transação faz com que quaisquer mensagens removidas por uma chamada RemoveCurrent sejam devolvidas à fila. A remoção não é irreversível até que a transação seja realizada.

Se estiveres a usar journaling de fila, remover a mensagem faz com que uma cópia fique na fila de diário, tal como o MessageQueue método da Receive classe.

Quando remove a mensagem atual, o cursor é movido para a próxima mensagem. Não tens de ligar MoveNext depois de ligar RemoveCurrent.

Ver também

Aplica-se a

RemoveCurrent(TimeSpan, MessageQueueTransactionType)

Remove a mensagem atual de uma fila e devolve a mensagem à aplicação que chama. Se houver uma mensagem a remover, o método devolve-a imediatamente. Caso contrário, o método aguarda o timeout 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 esperar que a mensagem seja removida.

transactionType
MessageQueueTransactionType

Um dos MessageQueueTransactionType valores, descreve o tipo de contexto de transação a associar à mensagem.

Devoluções

A 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 expirou.

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

Observações

RemoveCurrent remove e devolve a mensagem na localização atual do cursor, usando um contexto de transação definido pelo transactionType parâmetro. Se o cursor estiver no final da fila, esta sobrecarga do método espera até que uma mensagem esteja disponível ou que o intervalo especificado pelo timeout parâmetro tenha expirado.

Especifique Automatic para o transactionType parâmetro se já existe um contexto de transação externo associado à thread que pretende usar para receber a mensagem. Especifique Single se quer receber a mensagem como uma única transação interna. Pode especificar None se quer receber uma mensagem de uma fila transacional fora do contexto de uma transação.

Se estiveres a usar journaling de fila, remover a mensagem faz com que uma cópia fique na fila de diário, tal como o MessageQueue método da Receive classe.

Ao trabalhar com filas transacionais, uma reversão de uma transação faz com que quaisquer mensagens removidas por uma chamada RemoveCurrent sejam devolvidas à fila. A remoção não é irreversível até que a transação seja realizada.

Quando remove a mensagem atual, o cursor é movido para a próxima mensagem. Não tens de ligar MoveNext depois de ligar RemoveCurrent.

Ver também

Aplica-se a