Subj : Re: Synchronization constructs in Java and their implications To : comp.programming.threads From : Minkoo Seo Date : Mon Sep 26 2005 06:06 am I've timed an example program in which 1,000 threads competed for one lock using the codes posted. According to my results, synchronized keyword was the slowest one: Synchornized: 1139.4 ms Lock: 817.7 ms Semaphore: 823.8 ms Spinlock: 1.1 ms Accordingly, it does not make sense that all those constructs use synchronized keyword internally, doesn't it? .