Dispatcher thread-pool-executor fixed-pool-size not work as expected

Hi I am using akka: 2.5.23, I have a dedicated dispatcher configuration below:

my-blocking-dispatcher {
  type = Dispatcher
  executor = "thread-pool-executor"
  thread-pool-executor {
    fixed-pool-size = 16
  }
  throughput = 1
}

With the above configration, I expect to have a fixed thread pool. But when I observed through VisualVM, I saw that the thread sequence ids for the thread pool, my-blocking-dispatcher, keep changing. Meanwhile, I could see in VisualVM that there were a large number of threads were started and killed. Did I misconfigure anything, if I want a fixed thread pool the same as below:

ExecutionContext.fromExecutorService(Executors.newFixedThreadPool(16))

Thanks, Cheng

thread-pool-executor with fixed-pool-size will create a ThreadPoolExecutor with the given size as the value of corePoolSize and maxPoolSize.

There is also a setting thread-pool-executor.keep-alive-time which by default is 60s. Maybe you need to increase that?

Thanks @patriknw, I will try to increase keep-alive-time and see.