0 Replies Latest reply on Aug 12, 2014 6:47 AM by thioxray

    JVM is filled with Honteq Idle Threads and can't killed

    thioxray

      I would like to ask about AsynHornetqTaskClient. We use AsynHornetqTaskClient to process JBPM work flow to Hornetq Server.  In the Hornetq Server, server create new thread to process each invocation.

       

      e.g. Sample Code

      taskClient.getTasksAssignedAsPotentialOwner(userID, "en-UK", taskSummaryResponseHandler);

      boolean isDone = taskSummaryResponseHandler.waitTillDone(10000);

      if (isDone) {

                  System.out.println("Read PP Ok!");

              } else {

                  System.out.println("Read PP Error!");

              }

       

      By using isDone flag in the process, we can know "the process of thread is finished or not" .  So, now we can know which threads are unfinished but we can't kill these threads. Although we try to increase the waiting time for those thread to be finished but they didn't finished until Jboss cancel active connection of this thread. Jboss can only make this thread to idle but Jboss can't kill  this thread. We didn't know how to kill those threads (Hornetq threads).

       

      After the idle threads of Hornetq are filled in JVM, we can't process any JBPM related process successfully and we need to restart our application server. Please let me know how do can i solve this idle thread problems.

       

      P.S -> We have no error when we have only one  concurrent client to our application. We have this error when we have 6 or more concurrent user.

       

      Message was edited by: Yan Naing Kyaw