I've been having some problems on an application where some timeouts are occurring, i think it may have something to do with the fact that i use Thread.sleep() in some processes.

The question is, if i have a bunch of threads running at the same time how does this class decide which Thread to sleep?