24 lines
791 B
Markdown
24 lines
791 B
Markdown
---
|
|
layout: pattern
|
|
title: Thread Local Storage
|
|
folder: tls
|
|
permalink: /patterns/tls/
|
|
pumlid:
|
|
categories: Concurrency
|
|
tags:
|
|
- Java
|
|
- Difficulty-Intermediate
|
|
---
|
|
|
|
## Intent
|
|
Securing variables global to a thread, i.e. class variables if a Callable object,
|
|
against being spoiled by other threads using the same instance of the Callable object
|
|
|
|

|
|
|
|
## Applicability
|
|
Use the Thread Local Storage in any of the following situations
|
|
|
|
* when you use class variables in your Callable Object that are not read-only and you use the same Callable instance in more than one thread running in parallel
|
|
* when you use static variables in your Callable Object that are not read-only and more than one instances of the Callable may run in parallel threads.
|