Tested both scenario
Scenario 1
Faster even at 80 dequeue per second (~ 1 milli second per dequeue)
ENQUEUE
qname:='pin_q_'||:new.amount;
DBMS_AQ.enqueue(queue_name=>qname,
DEQUEUE
qname:='pin_q_'||iamount;
DBMS_AQ.dequeue(queue_name=>qname,
Scenario 2
Slow (~ 700 milli second for dequeue)
ENQUEUE
l_message_properties.correlation:=:new.amount;
DBMS_AQ.enqueue(queue_name=>'pin_q',
DEQUEUE
l_dequeue_options.correlation:=iamount;
l_dequeue_options.navigation:=dbms_aq.FIRST_MESSAGE;
DBMS_AQ.dequeue(queue_name=>'pin_q',