3 Replies Latest reply on Oct 27, 2016 8:57 AM by David Lloyd

    ExecutorService.newFixedThreadPool() - Possible thread leak?

    Mario Rossi Newbie

      We have a web service REST which invokes a method which sends some mail, using multithreading, like this:




      executor = Executors.newFixedThreadPool(10);



      list = new ArrayList<Future<Integer>>();


      for (int i = 0; i < recipients.length; i++) {


      email = new Email();




      worker = new EmailService(email);


      future = executor.submit(worker);







      while (!executor.isTerminated()) {}



      When i monitor THREAD USAGE from Wildfly 10.1.0 console (STANDALONE SERVER -> MONITOR JVM ) I noticed that:


           LIVE: increasing every time i invoke the method

           DAEMON: not increasing

      The statement executor.shutdown() seems not to kill the threads .  The thread simply send a mail and returns.

      Some hints?