Quando e como devo usar uma variável ThreadLocal?

Quando devo usar uma ThreadLocalvariável? Como isso é