MessageQueueTransaction Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia transakcję wewnętrzną kolejkowania komunikatów.
public ref class MessageQueueTransaction : IDisposable
public class MessageQueueTransaction : IDisposable
type MessageQueueTransaction = class
interface IDisposable
Public Class MessageQueueTransaction
Implements IDisposable
- Dziedziczenie
-
MessageQueueTransaction
- Implementuje
Uwagi
Aby wysłać lub odebrać komunikat w ramach transakcji, można użyć MessageQueueTransaction klasy , aby utworzyć transakcję i przekazać ją do przeciążenia MessageQueue.Send metody lub MessageQueue.Receive metody, która przyjmuje transaction
parametr. Komunikaty wysyłane w ramach transakcji muszą być wysyłane do kolejek transakcyjnych. Komunikaty odebrane z kolejek transakcyjnych muszą być odbierane przy użyciu określonej transakcji.
Oprócz Receive metody można odbierać komunikaty z określonym identyfikatorem lub określonym identyfikatorem korelacji. Zobacz metody ReceiveById i ReceiveByCorrelationId , aby uzyskać więcej informacji na temat selektywnego odbierania komunikatów z kolejek transakcyjnych.
Komunikaty wysyłane do kolejek transakcyjnych są usuwane, jeśli transakcja zostanie zatwierdzona. Podobnie komunikaty odebrane z kolejek transakcyjnych są zwracane do kolejki, jeśli transakcja zostanie wycofana.
W przypadku utworzenia wystąpienia MessageQueueTransaction elementu i przekazania go do odpowiedniego Send przeciążenia metody lub Receive metody w celu wysłania komunikatu do kolejki nie transakcyjnej lub odebrania komunikatu z kolejki nie transakcyjnej metoda zgłasza wyjątek wskazujący "Nieprawidłowe użycie transakcji".
MessageQueueTransaction program obsługuje wątki mieszkania, więc jeśli stan mieszkania to STA
, nie można użyć transakcji w wielu wątkach. Visual Basic ustawia stan głównego wątku na STA
, więc należy zastosować element MTAThreadAttribute w podproceducji Main
. W przeciwnym razie wysłanie komunikatu transakcyjnego przy użyciu innego wątku zgłasza MessageQueueException wyjątek. Zastosuj ten element MTAThreadAttribute przy użyciu następującego fragmentu.
<System.MTAThreadAttribute>
public sub Main()
Konstruktory
MessageQueueTransaction() |
Inicjuje nowe wystąpienie klasy MessageQueueTransaction. |
Właściwości
Status |
Pobiera stan transakcji. |
Metody
Abort() |
Cofa oczekującą transakcję wewnętrzną. |
Begin() |
Rozpoczyna nową transakcję wewnętrzną kolejkowania komunikatów. |
Commit() |
Zatwierdza oczekującą transakcję wewnętrzną. |
Dispose() |
Zwalnia wszelkie zasoby używane przez element MessageQueueTransaction. |
Dispose(Boolean) |
Zwalnia zasoby niezarządzane używane przez element MessageQueueTransaction i opcjonalnie zwalnia zasoby zarządzane. |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
Finalize() |
Zwalnia zasoby blokowane przez bieżące wystąpienie. |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
Dotyczy
Bezpieczeństwo wątkowe
Ten typ jest bezpieczny wątkowo.
Zobacz też
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla