• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

EDU.oswego.cs.dl.util.concurrent in threadump

 
Joshua Emerson
Greenhorn
Posts: 19
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Getting the below in threadump. "EDU.oswego.cs.dl.util.concurrent.LinkedQueue.poll" is seen and have not used any such reference in pom file. Any help, how it refers to EDU package and how to proceed debugging

"Thread-66058" daemon prio=10 tid=0x00002ab9e3a14800 nid=0x4982 in Object.wait() [0x00002ab9f1243000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00002ab95ecfb180> (a java.lang.Object)
at EDU.oswego.cs.dl.util.concurrent.LinkedQueue.poll(Unknown Source)
- locked <0x00002ab95ecfb180> (a java.lang.Object)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor.getTask(Unknown Source)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Thread.java:619)
 
Ulf Dittmer
Rancher
Pie
Posts: 42967
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
That library may be a dependency of a library you're using directly.

how to proceed debugging

Debugging what? A thread dump is just a snapshot of all threads in a JVM; it does not indicate any problem. Is there a problem?
 
Chris Hurst
Ranch Hand
Posts: 443
3
C++ Eclipse IDE Java
  • Likes 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The class is from backport / concurrent .jar , it was the predecessor to the Java 5 concurrency classes and is pretty much the same code, give or the take the package names / one collection and the Java 5 has a habit of using a bit more memory. It was written by Doug Lea (I think ;-) ) when proposing the Java 5 classes I believe and is also used when you need to run Java 4 code that can use Java 5 like concurrency classes.

I'd just google it or JAD (decompile it) to view the code, though in this case just looking at the equivalent Java 5 class should be enough. You can step to say eclipse with JAD or other decompiler and you should be able to add breakpoints step wound the code base etc but ...

basically you have a thread pool that sits waiting for jobs, you add a job it excutes it on a thread and waits for the next one. Your thread is waiting for a task to come in to work on, that's all expected behavior.

Maybe this (you might want an older version) ...
http://mvnrepository.com/artifact/backport-util-concurrent/backport-util-concurrent

http://mavenhub.com/mvn/central/backport-util-concurrent/backport-util-concurrent/3.0
 
Joshua Emerson
Greenhorn
Posts: 19
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thank you so much for the details provided Chris
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic