Threads, ThreadPools, and Executors: Multi-Thread Processing In Java
This detailed description of how implementations of the Java Executor interface work focuses on relations between all of the Executors and their use cases.
Source: dzone.com