The difference between the Runnable and Callable interfaces in Java

Scottm picture Scottm · Sep 26, 2008 · Viewed 298.7k times · Source

What is the difference between using the Runnable and Callable interfaces when designing a concurrent thread in Java, why would you choose one over the other?

Answer

Jorge Ferreira picture Jorge Ferreira · Sep 26, 2008

See explanation here.

The Callable interface is similar to Runnable, in that both are designed for classes whose instances are potentially executed by another thread. A Runnable, however, does not return a result and cannot throw a checked exception.