4

Possible Duplicate:
Eclipse debugger always blocks on ThreadPoolExecutor without any obvious exception, why?

Eclipse continually suspends execution within run() method below at line within finally block : workDone(this);

I have not set any breakpoints here and my app seems to be working as expected.

Any pointers on why this is occuring ?

   java.util.concurrent.ThreadPoolExecutor

   public void run() {
        try {
            Runnable task = firstTask;
            firstTask = null;
            while (task != null || (task = getTask()) != null) {
                runTask(task);
                task = null;
            }
        } finally {
            workerDone(this);
        }
    }
}
Community
  • 1
  • 1
blue-sky
  • 51,962
  • 152
  • 427
  • 752

1 Answers1

3

In all probability your method invocation workerDone throws an exception, which is unhandled and bubbles up outside of the run method. The thread is thus brought to an abrupt end, but Eclipse lets you inspect that situation just before the exception escapes the method. That's an automatic "exception breakpoint".

Marko Topolnik
  • 195,646
  • 29
  • 319
  • 436