MessageEnumerator.RemoveCurrent Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rimuove il messaggio corrente dalla coda e restituisce il messaggio all'applicazione chiamante. La rimozione del messaggio lo elimina dalla coda.
Overload
| Nome | Descrizione |
|---|---|
| RemoveCurrent() |
Rimuove il messaggio corrente da una coda transazionale o non transazionale e restituisce il messaggio all'applicazione chiamante. Non è specificato alcun timeout per l'arrivo di un messaggio nella coda. |
| RemoveCurrent(MessageQueueTransaction) |
Rimuove il messaggio corrente da una coda transazionale e restituisce il messaggio all'applicazione chiamante. Non è specificato alcun timeout per l'arrivo di un messaggio nella coda. |
| RemoveCurrent(MessageQueueTransactionType) |
Rimuove il messaggio corrente da una coda e restituisce il messaggio all'applicazione chiamante. Non è specificato alcun timeout per l'arrivo di un messaggio nella coda. |
| RemoveCurrent(TimeSpan) |
Rimuove il messaggio corrente dalla coda e restituisce il messaggio all'applicazione chiamante. Se è presente un messaggio da rimuovere, il metodo lo restituisce immediatamente. In caso contrario, il metodo attende il timeout specificato per l'arrivo di un nuovo messaggio. |
| RemoveCurrent(TimeSpan, MessageQueueTransaction) |
Rimuove il messaggio corrente da una coda transazionale e restituisce il messaggio all'applicazione chiamante. Se è presente un messaggio da rimuovere, il metodo lo restituisce immediatamente. In caso contrario, il metodo attende il timeout specificato per l'arrivo di un nuovo messaggio. |
| RemoveCurrent(TimeSpan, MessageQueueTransactionType) |
Rimuove il messaggio corrente da una coda e restituisce il messaggio all'applicazione chiamante. Se è presente un messaggio da rimuovere, il metodo lo restituisce immediatamente. In caso contrario, il metodo attende il timeout specificato per l'arrivo di un nuovo messaggio. |
Commenti
Il comportamento descritto per questi overload è applicabile solo se l'istanza MessageEnumerator viene recuperata tramite .GetMessageEnumerator2 Non usare GetMessageEnumerator per recuperare un'istanza di MessageEnumerator perché questo metodo è stato deprecato.
RemoveCurrent()
Rimuove il messaggio corrente da una coda transazionale o non transazionale e restituisce il messaggio all'applicazione chiamante. Non è specificato alcun timeout per l'arrivo di un messaggio nella coda.
public:
System::Messaging::Message ^ RemoveCurrent();
public System.Messaging.Message RemoveCurrent();
member this.RemoveCurrent : unit -> System.Messaging.Message
Public Function RemoveCurrent () As Message
Valori restituiti
Oggetto Message che fa riferimento al primo messaggio disponibile nella coda.
Commenti
RemoveCurrent rimuove e restituisce il messaggio in corrispondenza della posizione corrente del cursore.
Se si usa l'inserimento nel journal delle code, la rimozione del messaggio causa la memorizzazione di una copia nella coda del journal, proprio come avviee con il MessageQueue metodo della Receive classe.
Quando si rimuove il messaggio corrente, il cursore viene spostato nel messaggio successivo. Non è necessario chiamare dopo aver chiamato MoveNextRemoveCurrent.
Se si chiama questo overload in una coda transazionale, Accodamento messaggi crea una singola transazione interna.
Vedi anche
Si applica a
RemoveCurrent(MessageQueueTransaction)
Rimuove il messaggio corrente da una coda transazionale e restituisce il messaggio all'applicazione chiamante. Non è specificato alcun timeout per l'arrivo di un messaggio nella coda.
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
Parametri
- transaction
- MessageQueueTransaction
Oggetto MessageQueueTransaction che specifica la transazione in cui verrà rimosso il messaggio.
Valori restituiti
Oggetto Message che fa riferimento al primo messaggio disponibile nella coda.
Eccezioni
Il transaction parametro è null.
Commenti
RemoveCurrent rimuove e restituisce il messaggio in corrispondenza della posizione corrente del cursore, utilizzando il contesto di transazione interno definito dal transaction parametro .
Se si usa l'inserimento nel journal delle code, la rimozione del messaggio causa la memorizzazione di una copia nella coda del journal, proprio come avviee con il MessageQueue metodo della Receive classe.
Quando si utilizzano code transazionali, un rollback di una transazione causa la restituzione di tutti i messaggi rimossi da una chiamata alla RemoveCurrent coda. La rimozione non è irreversibile finché non viene eseguito il commit della transazione.
Quando si rimuove il messaggio corrente, il cursore viene spostato nel messaggio successivo. Non è necessario chiamare dopo aver chiamato MoveNextRemoveCurrent.
Vedi anche
Si applica a
RemoveCurrent(MessageQueueTransactionType)
Rimuove il messaggio corrente da una coda e restituisce il messaggio all'applicazione chiamante. Non è specificato alcun timeout per l'arrivo di un messaggio nella coda.
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
Parametri
- transactionType
- MessageQueueTransactionType
Uno dei MessageQueueTransactionType valori, che descrive il tipo di contesto della transazione da associare al messaggio.
Valori restituiti
Oggetto Message che fa riferimento al primo messaggio disponibile nella coda.
Eccezioni
Il transactionType parametro non è uno dei MessageQueueTransactionType membri.
Commenti
RemoveCurrent rimuove e restituisce il messaggio in corrispondenza della posizione corrente del cursore, utilizzando un contesto di transazione definito dal transactionType parametro .
Specificare Automatic per il transactionType parametro se è già presente un contesto di transazione esterno collegato al thread che si vuole usare per ricevere il messaggio. Specificare Single se si desidera ricevere il messaggio come singola transazione interna. È possibile specificare None se si desidera ricevere un messaggio da una coda transazionale all'esterno di un contesto di transazione.
Se si usa l'inserimento nel journal delle code, la rimozione del messaggio causa la memorizzazione di una copia nella coda del journal, proprio come avviee con il MessageQueue metodo della Receive classe.
Quando si utilizzano code transazionali, un rollback di una transazione causa la restituzione di tutti i messaggi rimossi da una chiamata alla RemoveCurrent coda. La rimozione non è irreversibile finché non viene eseguito il commit della transazione.
Quando si rimuove il messaggio corrente, il cursore viene spostato nel messaggio successivo. Non è necessario chiamare dopo aver chiamato MoveNextRemoveCurrent.
Vedi anche
Si applica a
RemoveCurrent(TimeSpan)
Rimuove il messaggio corrente dalla coda e restituisce il messaggio all'applicazione chiamante. Se è presente un messaggio da rimuovere, il metodo lo restituisce immediatamente. In caso contrario, il metodo attende il timeout specificato per l'arrivo di un nuovo messaggio.
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
Parametri
- timeout
- TimeSpan
Intervallo di tempo di attesa per l'arrivo di un messaggio nella coda.
Valori restituiti
Oggetto Message che fa riferimento al primo messaggio disponibile nella coda.
Eccezioni
Il valore specificato per il timeout parametro non è valido.
Timeout scaduto.
Commenti
RemoveCurrent rimuove e restituisce il messaggio in corrispondenza della posizione corrente del cursore. Se il cursore si trova alla fine della coda, questo overload del metodo attende fino a quando non è disponibile un messaggio o l'intervallo timeout specificato dal parametro è scaduto.
Se si usa l'inserimento nel journal delle code, la rimozione del messaggio causa la memorizzazione di una copia nella coda del journal, proprio come avviee con il MessageQueue metodo della Receive classe.
Quando si rimuove il messaggio corrente, il cursore viene spostato nel messaggio successivo. Non è necessario chiamare dopo aver chiamato MoveNextRemoveCurrent.
Se si chiama questo overload in una coda transazionale, Accodamento messaggi crea una singola transazione interna.
Vedi anche
Si applica a
RemoveCurrent(TimeSpan, MessageQueueTransaction)
Rimuove il messaggio corrente da una coda transazionale e restituisce il messaggio all'applicazione chiamante. Se è presente un messaggio da rimuovere, il metodo lo restituisce immediatamente. In caso contrario, il metodo attende il timeout specificato per l'arrivo di un nuovo messaggio.
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
Parametri
- timeout
- TimeSpan
Intervallo di tempo di attesa per la rimozione del messaggio.
- transaction
- MessageQueueTransaction
Oggetto MessageQueueTransaction che specifica il contesto della transazione per il messaggio.
Valori restituiti
Oggetto Message che fa riferimento al primo messaggio disponibile nella coda.
Eccezioni
Il valore specificato per il timeout parametro non è valido.
Il transaction parametro è null.
Timeout scaduto.
Commenti
RemoveCurrent rimuove e restituisce il messaggio in corrispondenza della posizione corrente del cursore. Se il cursore si trova alla fine della coda, questo overload del metodo attende fino a quando non è disponibile un messaggio o l'intervallo timeout specificato dal parametro è scaduto.
Quando si utilizzano code transazionali, un rollback di una transazione causa la restituzione di tutti i messaggi rimossi da una chiamata alla RemoveCurrent coda. La rimozione non è irreversibile finché non viene eseguito il commit della transazione.
Se si usa l'inserimento nel journal delle code, la rimozione del messaggio causa la memorizzazione di una copia nella coda del journal, proprio come avviee con il MessageQueue metodo della Receive classe.
Quando si rimuove il messaggio corrente, il cursore viene spostato nel messaggio successivo. Non è necessario chiamare dopo aver chiamato MoveNextRemoveCurrent.
Vedi anche
Si applica a
RemoveCurrent(TimeSpan, MessageQueueTransactionType)
Rimuove il messaggio corrente da una coda e restituisce il messaggio all'applicazione chiamante. Se è presente un messaggio da rimuovere, il metodo lo restituisce immediatamente. In caso contrario, il metodo attende il timeout specificato per l'arrivo di un nuovo messaggio.
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
Parametri
- timeout
- TimeSpan
Intervallo di tempo di attesa per la rimozione del messaggio.
- transactionType
- MessageQueueTransactionType
Uno dei MessageQueueTransactionType valori, che descrive il tipo di contesto della transazione da associare al messaggio.
Valori restituiti
Oggetto Message che fa riferimento al primo messaggio disponibile nella coda.
Eccezioni
Il valore specificato per il timeout parametro non è valido.
Timeout scaduto.
Il transactionType parametro non è uno dei MessageQueueTransactionType membri.
Commenti
RemoveCurrent rimuove e restituisce il messaggio in corrispondenza della posizione corrente del cursore, utilizzando un contesto di transazione definito dal transactionType parametro . Se il cursore si trova alla fine della coda, questo overload del metodo attende fino a quando non è disponibile un messaggio o l'intervallo timeout specificato dal parametro è scaduto.
Specificare Automatic per il transactionType parametro se è già presente un contesto di transazione esterno collegato al thread che si vuole usare per ricevere il messaggio. Specificare Single se si desidera ricevere il messaggio come singola transazione interna. È possibile specificare None se si desidera ricevere un messaggio da una coda transazionale all'esterno di un contesto di transazione.
Se si usa l'inserimento nel journal delle code, la rimozione del messaggio causa la memorizzazione di una copia nella coda del journal, proprio come avviee con il MessageQueue metodo della Receive classe.
Quando si utilizzano code transazionali, un rollback di una transazione causa la restituzione di tutti i messaggi rimossi da una chiamata alla RemoveCurrent coda. La rimozione non è irreversibile finché non viene eseguito il commit della transazione.
Quando si rimuove il messaggio corrente, il cursore viene spostato nel messaggio successivo. Non è necessario chiamare dopo aver chiamato MoveNextRemoveCurrent.