Julien:
Still I don't understand what the current thread is since there may be multiple threads executing at the same time...
Current thread is the thread that has executed the code, calling
Thread.currentThread().
Jelle:
The thread scheduler will only ever allow one runnable thread to run at a time, and that thread is referred to as the current thread.
Yeah, true for system with a single processor but on multi-processor systems, this assumption will fall apart.