使用SimpleMessageListenerContainer.start()在客户机上启动侦听器线程,以侦听来自RabbitMQ的消息。所有侦听器线程的名称都是SimpleAsyncTaskExecutor-1。有没有办法让用户提供/设置listener-thread的名称(通过查看threadname和该线程所属的相关代码部分来帮助解决问题)
以下是我当前实现的摘要
我正在使用带有以下标签的xml文件来定义连接工厂、队列、绑定等。例如,使用的XML标签是Rabbit:queues,Rabbit: queue -arguments,Rabbit:direct-exchange,Rabbit:topic-exchange,Rabbit:bindings,rabbit:binding,Rabbit:Admin (带ConnectionFactory)
以下是启动listener的代码片段
SimpleMessageListenerContainer container= new SimpleMessageListenerContainer();
container.setConnectionFactory(messagingTopology.getConnectionFactory());
container.setQueueNames(new String[] { messagingTopology.getQueue().getName() });
MessageListenerAdapter adapter = new MessageListenerAdapter(listener);
container.setMessageListener(adapter);
container.start();发布于 2019-08-15 22:57:55
设置侦听器容器的taskExecutor (XML中的task-executor)属性。线程名称基于执行器的bean名称,因此每个容器使用不同的名称。
https://stackoverflow.com/questions/57503620
复制相似问题