2013-06-11 1 views
0

activemq 구성에서 우선 순위가 지정된 메시지를 활성화했으며 우선 순위가 정상적으로 작동합니다. 예를 들어 X 메시지 (우선 순위가 0이고 절반이 우선 순위 9 임)를 보낼 때 소비자 올바른 순서로 메시지를 수신합니다.ActiveMQ CMS - CMSPriority가있는 소비자 선택자

그러나 선택기 (예 : CMSPriority > 0 또는 CMSPriority < 4)를 사용하여 createConsumer() 메서드를 호출 할 때 메시지가 수신되지 않습니다.

mSession = mConnection->createSession(Session::INDIVIDUAL_ACKNOWLEDGE); 
mDestination = mSession->createQueue(mDestURI); 
mConsumer = mSession->createConsumer(mDestination, "CMSPriority < 4"); 

내가 mConsumer = mSession->createConsumer(mDestination); 마지막 줄을 변경

은, 모든 메시지는 올바른 우선 순위, 수신 :

다음은 관련 소비자 코드입니다.

누구든지이 동작을 설명 할 수 있습니까?

답변

0

C++ 클라이언트는 선택자 명령문을 일반적인 JMS 명명 규칙으로 변환하는 데 어떤 마법도 걸리지 않으며, JMSPriority가 메시지 선택자의 핵심이며이를 사용하여 문제를 해결하는지 확인하십시오.

+0

문제가 해결되었습니다. 감사! –

관련 문제