큐와 메시지 컬렉션
업데이트: 2007년 11월
MessageQueue 클래스의 다양한 검색 메서드를 사용하면 메시지 큐 네트워크의 큐 목록과 이 큐에 있는 메시지를 검색할 수 있습니다. 관리 작업을 수행하거나 큐 내용에 대한 보고서를 작성하거나 큐의 내용 중 특정 기준을 충족하는 메시지를 찾는 경우 큐 목록과 메시지를 검색할 수 있습니다.
메시지와 메시지 큐를 모두 검색하는 방법에는 두 가지가 있습니다. 즉, 네트워크에서 메시지나 큐의 정적 스냅샷을 검색하거나, 열거자를 사용하여 메시지와 큐를 반복 검색할 수 있습니다. 큐나 메시지의 정적 목록을 검색하는 것은 열거형을 검색하는 것보다 빠르지만 정확도가 떨어지고 최종 결과를 세밀하게 제어할 수 없습니다. 네트워크의 모든 공개 큐에서 관리 작업을 수행해야 하는 경우 정적 스냅샷 검색을 사용할 수 있습니다.
열거자로 검색 결과의 처리 방식을 세밀하게 제어할 수 있습니다. 열거자를 사용하면 반환된 컬렉션에서 모든 항목을 계산하지 않고 특정 기준을 충족하는 큐나 메시지를 찾을 수 있습니다. 예를 들어, 큐의 내용을 자세히 보고 특정 속성이 true로 설정된 메시지만 처리하고 싶은 경우 열거자를 사용합니다.
메시지 큐 검색
다음과 같은 방법으로 메시지 큐에 대한 정보를 검색할 수 있습니다.
네트워크에 있는 모든 공개 큐와 개인 큐의 정적 배열을 검색합니다.
큐가 만들어지고 수정된 날짜 및 시간과 같은 특정 기준을 지정하거나 큐를 검색할 범주, 레이블 또는 컴퓨터를 지정하여 네트워크에 있는 모든 공개 큐의 정적 하위 집합을 검색합니다.
열거자를 사용하여 네트워크에 있는 큐를 회귀 검색하거나 컴퓨터 이름, 만들어진 날짜 및 시간, 범주와 같은 특정 검색 기준을 지정하여 네트워크에 있는 모든 공개 큐의 하위 집합을 회귀 검색합니다.
또한 Exists 메서드를 사용하면 원하는 큐가 있는지 여부를 확인할 수 있습니다. Exists 메서드는 사용자가 정의한 경로로 특정 큐를 검색합니다.
메시지 큐의 목록 검색에 대한 자세한 내용은 방법: 큐 검색을 참조하십시오.
메시지 검색
배열이나 열거자에서 메시지를 검색하는 경우는 메시지를 읽거나 받을 때처럼 실제로 큐에서 이 메시지를 꺼내는 것이 아닙니다. 대신 큐에 있는 항목에 대한 정보를 검색하고 실제 메시지는 이 메시지를 받는 사용자가 사용할 수 있도록 남아 있습니다.
다음과 같은 방법으로 메시지를 검색할 수 있습니다.
큐에 있는 모든 메시지의 정적 배열을 검색합니다.
열거자를 사용하여 큐에 있는 메시지를 회귀 검색합니다.
메시지의 목록을 검색하는 방법에 대한 자세한 내용은 방법: 메시지 검색을 참조하십시오.
열거자 내 항목 사용
메시지나 큐의 열거형을 만든 다음 열거자는 일반적으로 열거형의 첫 번째 항목 앞에 배치됩니다. MoveNext 메서드를 호출하여 목록의 첫 번째 항목으로 이동하고 다음 항목으로 계속 이동할 수 있습니다. 또한 Current 메서드를 사용하여 현재 열거형에 배치된 항목을 반환할 수 있습니다.