다음을 통해 공유


MessageEnumerator.RemoveCurrent 메서드

정의

큐에서 현재 메시지를 제거하고 호출 애플리케이션에 해당 메시지를 반환합니다. 메시지를 제거하면 큐에서도 해당 메시지가 삭제됩니다.

오버로드

RemoveCurrent()

트랜잭션 큐 및 비트랜잭션 큐에서 현재 메시지를 제거하고 호출 애플리케이션에 해당 메시지를 반환합니다. 큐에 도착하는 메시지에 대해 제한 시간이 지정되지 않았습니다.

RemoveCurrent(MessageQueueTransaction)

트랜잭션 큐에서 현재 메시지를 제거하고 호출 애플리케이션에 해당 메시지를 반환합니다. 큐에 도착하는 메시지에 대해 제한 시간이 지정되지 않았습니다.

RemoveCurrent(MessageQueueTransactionType)

큐에서 현재 메시지를 제거하고 호출 애플리케이션에 해당 메시지를 반환합니다. 큐에 도착하는 메시지에 대해 제한 시간이 지정되지 않았습니다.

RemoveCurrent(TimeSpan)

큐에서 현재 메시지를 제거하고 호출 애플리케이션에 해당 메시지를 반환합니다. 제거할 메시지가 있으면 메서드는 해당 메시지를 즉시 반환합니다. 제거할 메시지가 없으면 메서드는 새 메시지가 도착할 때까지 지정한 제한 시간 동안 대기합니다.

RemoveCurrent(TimeSpan, MessageQueueTransaction)

트랜잭션 큐에서 현재 메시지를 제거하고 호출 애플리케이션에 해당 메시지를 반환합니다. 제거할 메시지가 있으면 메서드는 해당 메시지를 즉시 반환합니다. 제거할 메시지가 없으면 메서드는 새 메시지가 도착할 때까지 지정한 제한 시간 동안 대기합니다.

RemoveCurrent(TimeSpan, MessageQueueTransactionType)

큐에서 현재 메시지를 제거하고 호출 애플리케이션에 해당 메시지를 반환합니다. 제거할 메시지가 있으면 메서드는 해당 메시지를 즉시 반환합니다. 제거할 메시지가 없으면 메서드는 새 메시지가 도착할 때까지 지정한 제한 시간 동안 대기합니다.

설명

이러한 오버로드에 대해 설명된 동작은 를 사용하여 GetMessageEnumerator2instance 검색하는 경우에만 MessageEnumerator 적용됩니다. 이 메서드가 더 이상 사용되지 않으므로 를 사용하여 GetMessageEnumeratorMessageEnumerator instance 검색하지 마세요.

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 는 커서의 현재 위치에 있는 메시지를 제거하고 반환합니다.

큐 저널링을 사용하는 경우 메시지를 제거하면 클래스의 Receive 메서드와 마찬가지로 복사본이 저널 큐에 MessageQueue 보관됩니다.

현재 메시지를 제거하면 커서가 다음 메시지로 이동합니다. 를 호출한 후에는 를 호출 MoveNextRemoveCurrent할 필요가 없습니다.

트랜잭션 큐에서 이 오버로드를 호출하는 경우 메시지 큐는 단일 내부 트랜잭션을 만듭니다.

추가 정보

적용 대상

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 내부 트랜잭션 컨텍스트를 사용하여 커서의 현재 위치에서 메시지를 제거하고 반환합니다.

큐 저널링을 사용하는 경우 메시지를 제거하면 클래스의 Receive 메서드와 마찬가지로 복사본이 저널 큐에 MessageQueue 보관됩니다.

트랜잭션 큐로 작업할 때 트랜잭션 롤백을 사용하면 호출 RemoveCurrent 에 의해 제거된 모든 메시지가 큐에 반환됩니다. 트랜잭션이 커밋될 때까지 제거는 되돌릴 수 없습니다.

현재 메시지를 제거하면 커서가 다음 메시지로 이동합니다. 를 호출한 후에는 를 호출 MoveNextRemoveCurrent할 필요가 없습니다.

추가 정보

적용 대상

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 .

큐 저널링을 사용하는 경우 메시지를 제거하면 클래스의 Receive 메서드와 마찬가지로 복사본이 저널 큐에 MessageQueue 보관됩니다.

트랜잭션 큐로 작업할 때 트랜잭션 롤백을 사용하면 호출 RemoveCurrent 에 의해 제거된 모든 메시지가 큐에 반환됩니다. 트랜잭션이 커밋될 때까지 제거는 되돌릴 수 없습니다.

현재 메시지를 제거하면 커서가 다음 메시지로 이동합니다. 를 호출한 후에는 를 호출 MoveNextRemoveCurrent할 필요가 없습니다.

추가 정보

적용 대상

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 지정된 간격이 만료될 때까지 기다립니다.

큐 저널링을 사용하는 경우 메시지를 제거하면 클래스의 Receive 메서드와 마찬가지로 복사본이 저널 큐에 MessageQueue 보관됩니다.

현재 메시지를 제거하면 커서가 다음 메시지로 이동합니다. 를 호출한 후에는 를 호출 MoveNextRemoveCurrent할 필요가 없습니다.

트랜잭션 큐에서 이 오버로드를 호출하는 경우 메시지 큐는 단일 내부 트랜잭션을 만듭니다.

추가 정보

적용 대상

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 에 의해 제거된 모든 메시지가 큐에 반환됩니다. 트랜잭션이 커밋될 때까지 제거는 되돌릴 수 없습니다.

큐 저널링을 사용하는 경우 메시지를 제거하면 클래스의 Receive 메서드와 마찬가지로 복사본이 저널 큐에 MessageQueue 보관됩니다.

현재 메시지를 제거하면 커서가 다음 메시지로 이동합니다. 를 호출한 후에는 를 호출 MoveNextRemoveCurrent할 필요가 없습니다.

추가 정보

적용 대상

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 .

큐 저널링을 사용하는 경우 메시지를 제거하면 클래스의 Receive 메서드와 마찬가지로 복사본이 저널 큐에 MessageQueue 보관됩니다.

트랜잭션 큐로 작업할 때 트랜잭션 롤백을 사용하면 호출 RemoveCurrent 에 의해 제거된 모든 메시지가 큐에 반환됩니다. 트랜잭션이 커밋될 때까지 제거는 되돌릴 수 없습니다.

현재 메시지를 제거하면 커서가 다음 메시지로 이동합니다. 를 호출한 후에는 를 호출 MoveNextRemoveCurrent할 필요가 없습니다.

추가 정보

적용 대상