|
@@ -48,6 +48,24 @@ func (c *Consumer) SubscribeMulti(queueNames ...string) error {
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|
|
+ c.queues = queueNames
|
|
|
|
+ return nil
|
|
|
|
+}
|
|
|
|
+func (c *Consumer) HandlerMulti(process func(body []byte)) error {
|
|
|
|
+ for _, queue := range c.queues {
|
|
|
|
+ msgs, err := c.channel.Consume(queue, "", true, false, false, false, nil)
|
|
|
|
+ if err != nil {
|
|
|
|
+ println(err.Error())
|
|
|
|
+ return err
|
|
|
|
+ }
|
|
|
|
+ go func() {
|
|
|
|
+ for msg := range msgs {
|
|
|
|
+ func(msg amqp.Delivery) {
|
|
|
|
+ process(msg.Body)
|
|
|
|
+ }(msg)
|
|
|
|
+ }
|
|
|
|
+ }()
|
|
|
|
+ }
|
|
return nil
|
|
return nil
|
|
}
|
|
}
|
|
func (c *Consumer) Handler(queueName string, handler func(body []byte) error) error {
|
|
func (c *Consumer) Handler(queueName string, handler func(body []byte) error) error {
|