From 04868da93c309399f5767594f1abb42f51d00340 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Sumis=C5=82awski?= Date: Wed, 14 Feb 2018 20:21:21 +0100 Subject: [PATCH] Add dispatcher name to names of threads created by AffinityPool (as it is already done for ForkJoin and ThreadPool) #24544 --- .../scala/akka/dispatch/affinity/AffinityPool.scala | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/akka-actor/src/main/scala/akka/dispatch/affinity/AffinityPool.scala b/akka-actor/src/main/scala/akka/dispatch/affinity/AffinityPool.scala index 6e368dbd6c..34041d7ea2 100644 --- a/akka-actor/src/main/scala/akka/dispatch/affinity/AffinityPool.scala +++ b/akka-actor/src/main/scala/akka/dispatch/affinity/AffinityPool.scala @@ -337,11 +337,19 @@ private[akka] final class AffinityPoolConfigurator(config: Config, prerequisites exception) }).get - override def createExecutorServiceFactory(id: String, threadFactory: ThreadFactory): ExecutorServiceFactory = + override def createExecutorServiceFactory(id: String, threadFactory: ThreadFactory): ExecutorServiceFactory = { + val tf = threadFactory match { + case m: MonitorableThreadFactory ⇒ + // add the dispatcher id to the thread names + m.withName(m.name + "-" + id) + case other ⇒ other + } + new ExecutorServiceFactory { override def createExecutorService: ExecutorService = - new AffinityPool(id, poolSize, taskQueueSize, threadFactory, idleCpuLevel, queueSelectorFactory.create(), rejectionHandlerFactory.create()).start() + new AffinityPool(id, poolSize, taskQueueSize, tf, idleCpuLevel, queueSelectorFactory.create(), rejectionHandlerFactory.create()).start() } + } } trait RejectionHandler {