at threads.deadlock.DeadlockDemo$BadTransferOperation.run(DeadlockDemo.java:59)
Found 1 deadlock.
In this thread dump a smaller number of threads are involved in the deadlock, but if you analyze it you can draw the same conclusions as my first example.
Next time: fixing the code...
For more information see the other blogs in this series.
All source code for this an other blogs in the series are available on Github at git://github.com/roghughe/captaindebug.git