MessageEnumerator.RemoveCurrent Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Odebere aktuální zprávu z fronty a vrátí zprávu do volající aplikace. Odebráním zprávy ji odstraníte z fronty.
Přetížení
RemoveCurrent() |
Odebere aktuální zprávu z transakční nebo neaktuální fronty a vrátí zprávu volající aplikaci. Pro doručení zprávy do fronty není zadán žádný časový limit. |
RemoveCurrent(MessageQueueTransaction) |
Odebere aktuální zprávu z transakční fronty a vrátí zprávu do volající aplikace. Pro doručení zprávy do fronty není zadán žádný časový limit. |
RemoveCurrent(MessageQueueTransactionType) |
Odebere aktuální zprávu z fronty a vrátí zprávu volající aplikaci. Pro doručení zprávy do fronty není zadán žádný časový limit. |
RemoveCurrent(TimeSpan) |
Odebere aktuální zprávu z fronty a vrátí zprávu do volající aplikace. Pokud je zpráva k odebrání, metoda ji okamžitě vrátí. V opačném případě metoda čeká zadaný časový limit pro přijetí nové zprávy. |
RemoveCurrent(TimeSpan, MessageQueueTransaction) |
Odebere aktuální zprávu z transakční fronty a vrátí zprávu do volající aplikace. Pokud je zpráva k odebrání, metoda ji okamžitě vrátí. V opačném případě metoda čeká zadaný časový limit pro přijetí nové zprávy. |
RemoveCurrent(TimeSpan, MessageQueueTransactionType) |
Odebere aktuální zprávu z fronty a vrátí zprávu volající aplikaci. Pokud je zpráva k odebrání, metoda ji okamžitě vrátí. V opačném případě metoda čeká zadaný časový limit pro přijetí nové zprávy. |
Poznámky
Chování popsané pro tato přetížení je použitelné pouze v případě, že MessageEnumerator instance je načtena pomocí GetMessageEnumerator2. Nepoužívejte GetMessageEnumerator k načtení instance MessageEnumerator, protože tato metoda je zastaralá.
RemoveCurrent()
Odebere aktuální zprávu z transakční nebo neaktuální fronty a vrátí zprávu volající aplikaci. Pro doručení zprávy do fronty není zadán žádný časový limit.
public:
System::Messaging::Message ^ RemoveCurrent();
public System.Messaging.Message RemoveCurrent ();
member this.RemoveCurrent : unit -> System.Messaging.Message
Public Function RemoveCurrent () As Message
Návraty
Message, která odkazuje na první zprávu dostupnou ve frontě.
Poznámky
RemoveCurrent odebere a vrátí zprávu v aktuálním umístění kurzoru.
Pokud používáte deník fronty, odebrání zprávy způsobí, že kopie bude uložena ve frontě deníku stejně jako metoda Receive třídy MessageQueue.
Když odeberete aktuální zprávu, kurzor se přesune na další zprávu. Po volání RemoveCurrentnemusíte volat MoveNext .
Pokud toto přetížení zavoláte v transakční frontě, služba Řízení front zpráv vytvoří jednu interní transakci.
Viz také
Platí pro
RemoveCurrent(MessageQueueTransaction)
Odebere aktuální zprávu z transakční fronty a vrátí zprávu do volající aplikace. Pro doručení zprávy do fronty není zadán žádný časový limit.
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
Parametry
- transaction
- MessageQueueTransaction
Objekt MessageQueueTransaction, který určuje transakci, ve které bude zpráva odebrána.
Návraty
Message, která odkazuje na první zprávu dostupnou ve frontě.
Výjimky
Parametr transaction
je null
.
Poznámky
RemoveCurrent odebere a vrátí zprávu v aktuálním umístění kurzoru pomocí interního kontextu transakce definovaného parametrem transaction
.
Pokud používáte deník fronty, odebrání zprávy způsobí, že kopie bude uložena ve frontě deníku stejně jako metoda Receive třídy MessageQueue.
Když pracujete s transakčními frontami, vrácení transakce zpět způsobí, že všechny zprávy odebrané voláním RemoveCurrent se vrátí do fronty. Odebrání není nevratné, dokud transakce nebude potvrzena.
Když odeberete aktuální zprávu, kurzor se přesune na další zprávu. Po volání RemoveCurrentnemusíte volat MoveNext .
Viz také
Platí pro
RemoveCurrent(MessageQueueTransactionType)
Odebere aktuální zprávu z fronty a vrátí zprávu volající aplikaci. Pro doručení zprávy do fronty není zadán žádný časový limit.
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
Parametry
- transactionType
- MessageQueueTransactionType
Jedna z MessageQueueTransactionType hodnot popisující typ kontextu transakce, který chcete přidružit ke zprávě.
Návraty
Message, která odkazuje na první zprávu dostupnou ve frontě.
Výjimky
Parametr transactionType
není jedním ze členů MessageQueueTransactionType.
Poznámky
RemoveCurrent odebere a vrátí zprávu v aktuálním umístění kurzoru pomocí kontextu transakce definovaného parametrem transactionType
.
Zadejte Automatic
pro parametr transactionType
, pokud již existuje kontext externí transakce připojený k vláknu, které chcete použít k přijetí zprávy. Zadejte Single
, pokud chcete zprávu přijmout jako jednu interní transakci. Můžete zadat None
, pokud chcete přijmout zprávu z transakční fronty mimo kontext transakce.
Pokud používáte deník fronty, odebrání zprávy způsobí, že kopie bude uložena ve frontě deníku stejně jako metoda Receive třídy MessageQueue.
Když pracujete s transakčními frontami, vrácení transakce zpět způsobí, že všechny zprávy odebrané voláním RemoveCurrent se vrátí do fronty. Odebrání není nevratné, dokud transakce nebude potvrzena.
Když odeberete aktuální zprávu, kurzor se přesune na další zprávu. Po volání RemoveCurrentnemusíte volat MoveNext .
Viz také
Platí pro
RemoveCurrent(TimeSpan)
Odebere aktuální zprávu z fronty a vrátí zprávu do volající aplikace. Pokud je zpráva k odebrání, metoda ji okamžitě vrátí. V opačném případě metoda čeká zadaný časový limit pro přijetí nové zprávy.
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
Parametry
- timeout
- TimeSpan
Interval čekání na doručení zprávy do fronty.
Návraty
Message, která odkazuje na první zprávu dostupnou ve frontě.
Výjimky
Hodnota zadaná pro parametr timeout
je neplatná.
Vypršel časový limit.
Poznámky
RemoveCurrent odebere a vrátí zprávu v aktuálním umístění kurzoru. Pokud je kurzor na konci fronty, toto přetížení metody čeká na dostupnost zprávy nebo interval určený parametrem timeout
vypršela.
Pokud používáte deník fronty, odebrání zprávy způsobí, že kopie bude uložena ve frontě deníku stejně jako metoda Receive třídy MessageQueue.
Když odeberete aktuální zprávu, kurzor se přesune na další zprávu. Po volání RemoveCurrentnemusíte volat MoveNext .
Pokud toto přetížení zavoláte v transakční frontě, služba Řízení front zpráv vytvoří jednu interní transakci.
Viz také
Platí pro
RemoveCurrent(TimeSpan, MessageQueueTransaction)
Odebere aktuální zprávu z transakční fronty a vrátí zprávu do volající aplikace. Pokud je zpráva k odebrání, metoda ji okamžitě vrátí. V opačném případě metoda čeká zadaný časový limit pro přijetí nové zprávy.
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
Parametry
- timeout
- TimeSpan
Interval čekání na odebrání zprávy.
- transaction
- MessageQueueTransaction
Objekt MessageQueueTransaction, který určuje kontext transakce zprávy.
Návraty
Message, která odkazuje na první zprávu dostupnou ve frontě.
Výjimky
Hodnota zadaná pro parametr timeout
je neplatná.
Parametr transaction
je null
.
Vypršel časový limit.
Poznámky
RemoveCurrent odebere a vrátí zprávu v aktuálním umístění kurzoru. Pokud je kurzor na konci fronty, toto přetížení metody čeká na dostupnost zprávy nebo interval určený parametrem timeout
vypršela.
Když pracujete s transakčními frontami, vrácení transakce zpět způsobí, že všechny zprávy odebrané voláním RemoveCurrent se vrátí do fronty. Odebrání není nevratné, dokud transakce nebude potvrzena.
Pokud používáte deník fronty, odebrání zprávy způsobí, že kopie bude uložena ve frontě deníku stejně jako metoda Receive třídy MessageQueue.
Když odeberete aktuální zprávu, kurzor se přesune na další zprávu. Po volání RemoveCurrentnemusíte volat MoveNext .
Viz také
Platí pro
RemoveCurrent(TimeSpan, MessageQueueTransactionType)
Odebere aktuální zprávu z fronty a vrátí zprávu volající aplikaci. Pokud je zpráva k odebrání, metoda ji okamžitě vrátí. V opačném případě metoda čeká zadaný časový limit pro přijetí nové zprávy.
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
Parametry
- timeout
- TimeSpan
Interval čekání na odebrání zprávy.
- transactionType
- MessageQueueTransactionType
Jedna z MessageQueueTransactionType hodnot popisující typ kontextu transakce, který chcete přidružit ke zprávě.
Návraty
Message, která odkazuje na první zprávu dostupnou ve frontě.
Výjimky
Hodnota zadaná pro parametr timeout
je neplatná.
Vypršel časový limit.
Parametr transactionType
není jedním ze členů MessageQueueTransactionType.
Poznámky
RemoveCurrent odebere a vrátí zprávu v aktuálním umístění kurzoru pomocí kontextu transakce definovaného parametrem transactionType
. Pokud je kurzor na konci fronty, toto přetížení metody čeká na dostupnost zprávy nebo interval určený parametrem timeout
vypršela.
Zadejte Automatic
pro parametr transactionType
, pokud již existuje kontext externí transakce připojený k vláknu, které chcete použít k přijetí zprávy. Zadejte Single
, pokud chcete zprávu přijmout jako jednu interní transakci. Můžete zadat None
, pokud chcete přijmout zprávu z transakční fronty mimo kontext transakce.
Pokud používáte deník fronty, odebrání zprávy způsobí, že kopie bude uložena ve frontě deníku stejně jako metoda Receive třídy MessageQueue.
Když pracujete s transakčními frontami, vrácení transakce zpět způsobí, že všechny zprávy odebrané voláním RemoveCurrent se vrátí do fronty. Odebrání není nevratné, dokud transakce nebude potvrzena.
Když odeberete aktuální zprávu, kurzor se přesune na další zprávu. Po volání RemoveCurrentnemusíte volat MoveNext .