MessageEnumerator.RemoveCurrent 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
從佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 拿掉訊息會將它從佇列中刪除。
多載
RemoveCurrent() |
從交易式或非交易式佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 訊息抵達佇列時沒有指定逾時。 |
RemoveCurrent(MessageQueueTransaction) |
從交易佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 訊息抵達佇列時沒有指定逾時。 |
RemoveCurrent(MessageQueueTransactionType) |
從佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 訊息抵達佇列時沒有指定逾時。 |
RemoveCurrent(TimeSpan) |
從佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 如果有要移除的訊息,方法會立即傳回它。 否則,方法會等候指定的逾時,讓新訊息到達。 |
RemoveCurrent(TimeSpan, MessageQueueTransaction) |
從交易佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 如果有要移除的訊息,方法會立即傳回它。 否則,方法會等候指定的逾時,讓新訊息到達。 |
RemoveCurrent(TimeSpan, MessageQueueTransactionType) |
從佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 如果有要移除的訊息,方法會立即傳回它。 否則,方法會等候指定的逾時,讓新訊息到達。 |
備註
只有在使用 GetMessageEnumerator2擷取 MessageEnumerator 實例時,這些多載所述的行為才適用。 請勿使用 GetMessageEnumerator 來擷取 MessageEnumerator 實例,因為此方法已被取代。
RemoveCurrent()
從交易式或非交易式佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 訊息抵達佇列時沒有指定逾時。
public:
System::Messaging::Message ^ RemoveCurrent();
public System.Messaging.Message RemoveCurrent ();
member this.RemoveCurrent : unit -> System.Messaging.Message
Public Function RemoveCurrent () As Message
傳回
參考佇列中第一個可用訊息的 Message。
備註
RemoveCurrent 會移除並傳回游標目前位置的訊息。
如果您使用佇列日誌,移除訊息會導致將複本保留在日誌佇列中,就像 MessageQueue 類別的 Receive 方法一樣。
當您移除目前的訊息時,游標會移至下一個訊息。 呼叫 RemoveCurrent之後,您不需要呼叫 MoveNext。
如果您在交易佇列上呼叫此多載,消息佇列會建立單一內部交易。
另請參閱
適用於
RemoveCurrent(MessageQueueTransaction)
從交易佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 訊息抵達佇列時沒有指定逾時。
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
參數
- transaction
- MessageQueueTransaction
MessageQueueTransaction 物件,指定要移除訊息的交易。
傳回
參考佇列中第一個可用訊息的 Message。
例外狀況
transaction
參數是 null
。
備註
RemoveCurrent 會使用 transaction
參數所定義的內部交易內容,移除並傳回數據指標目前位置的訊息。
如果您使用佇列日誌,移除訊息會導致將複本保留在日誌佇列中,就像 MessageQueue 類別的 Receive 方法一樣。
使用交易佇列時,交易的復原會導致呼叫 RemoveCurrent 傳回佇列所移除的任何訊息。 在認可交易之前,移除無法復原。
當您移除目前的訊息時,游標會移至下一個訊息。 呼叫 RemoveCurrent之後,您不需要呼叫 MoveNext。
另請參閱
適用於
RemoveCurrent(MessageQueueTransactionType)
從佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 訊息抵達佇列時沒有指定逾時。
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
參數
- transactionType
- MessageQueueTransactionType
其中一個 MessageQueueTransactionType 值,描述要與訊息產生關聯的交易內容類型。
傳回
參考佇列中第一個可用訊息的 Message。
例外狀況
transactionType
參數不是其中一個 MessageQueueTransactionType 成員。
備註
RemoveCurrent 會使用 transactionType
參數所定義的交易內容,移除並傳回數據指標目前位置的訊息。
如果已經連結至您想要用來接收訊息的線程,請為 transactionType
參數指定 Automatic
。 如果您想要以單一內部交易的形式接收訊息,請指定 Single
。 如果您想要從交易內容外部的交易佇列接收訊息,您可以指定 None
。
如果您使用佇列日誌,移除訊息會導致將複本保留在日誌佇列中,就像 MessageQueue 類別的 Receive 方法一樣。
使用交易佇列時,交易的復原會導致呼叫 RemoveCurrent 傳回佇列所移除的任何訊息。 在認可交易之前,移除無法復原。
當您移除目前的訊息時,游標會移至下一個訊息。 呼叫 RemoveCurrent之後,您不需要呼叫 MoveNext。
另請參閱
適用於
RemoveCurrent(TimeSpan)
從佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 如果有要移除的訊息,方法會立即傳回它。 否則,方法會等候指定的逾時,讓新訊息到達。
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
參數
- timeout
- TimeSpan
等候訊息抵達佇列的時間間隔。
傳回
參考佇列中第一個可用訊息的 Message。
例外狀況
為 timeout
參數指定的值無效。
逾時已過期。
備註
RemoveCurrent 會移除並傳回游標目前位置的訊息。 如果數據指標位於佇列結尾,此方法的這個多載會等候訊息可用,或 timeout
參數指定的間隔已過期。
如果您使用佇列日誌,移除訊息會導致將複本保留在日誌佇列中,就像 MessageQueue 類別的 Receive 方法一樣。
當您移除目前的訊息時,游標會移至下一個訊息。 呼叫 RemoveCurrent之後,您不需要呼叫 MoveNext。
如果您在交易佇列上呼叫此多載,消息佇列會建立單一內部交易。
另請參閱
適用於
RemoveCurrent(TimeSpan, MessageQueueTransaction)
從交易佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 如果有要移除的訊息,方法會立即傳回它。 否則,方法會等候指定的逾時,讓新訊息到達。
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
參數
- timeout
- TimeSpan
等候移除訊息的時間間隔。
- transaction
- MessageQueueTransaction
MessageQueueTransaction 物件,指定訊息的交易內容。
傳回
參考佇列中第一個可用訊息的 Message。
例外狀況
為 timeout
參數指定的值無效。
transaction
參數是 null
。
逾時已過期。
備註
RemoveCurrent 會移除並傳回游標目前位置的訊息。 如果數據指標位於佇列結尾,此方法的這個多載會等候訊息可用,或 timeout
參數指定的間隔已過期。
使用交易佇列時,交易的復原會導致呼叫 RemoveCurrent 傳回佇列所移除的任何訊息。 在認可交易之前,移除無法復原。
如果您使用佇列日誌,移除訊息會導致將複本保留在日誌佇列中,就像 MessageQueue 類別的 Receive 方法一樣。
當您移除目前的訊息時,游標會移至下一個訊息。 呼叫 RemoveCurrent之後,您不需要呼叫 MoveNext。
另請參閱
適用於
RemoveCurrent(TimeSpan, MessageQueueTransactionType)
從佇列中移除目前的訊息,並將訊息傳回給呼叫的應用程式。 如果有要移除的訊息,方法會立即傳回它。 否則,方法會等候指定的逾時,讓新訊息到達。
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
參數
- timeout
- TimeSpan
等候移除訊息的時間間隔。
- transactionType
- MessageQueueTransactionType
其中一個 MessageQueueTransactionType 值,描述要與訊息產生關聯的交易內容類型。
傳回
參考佇列中第一個可用訊息的 Message。
例外狀況
為 timeout
參數指定的值無效。
逾時已過期。
transactionType
參數不是其中一個 MessageQueueTransactionType 成員。
備註
RemoveCurrent 會使用 transactionType
參數所定義的交易內容,移除並傳回數據指標目前位置的訊息。 如果數據指標位於佇列結尾,此方法的這個多載會等候訊息可用,或 timeout
參數指定的間隔已過期。
如果已經連結至您想要用來接收訊息的線程,請為 transactionType
參數指定 Automatic
。 如果您想要以單一內部交易的形式接收訊息,請指定 Single
。 如果您想要從交易內容外部的交易佇列接收訊息,您可以指定 None
。
如果您使用佇列日誌,移除訊息會導致將複本保留在日誌佇列中,就像 MessageQueue 類別的 Receive 方法一樣。
使用交易佇列時,交易的復原會導致呼叫 RemoveCurrent 傳回佇列所移除的任何訊息。 在認可交易之前,移除無法復原。
當您移除目前的訊息時,游標會移至下一個訊息。 呼叫 RemoveCurrent之後,您不需要呼叫 MoveNext。