One of the most critical aspects of a concurrent application is shared data. This has special importance in those objects that extend the
Thread class or implement the
If you create an object of a class that implements the
Runnable interface and then start various
Thread objects using the same
Runnable object, all the threads share the same attributes. This means that, if you change an attribute in a thread, all the threads will be affected by this change.
Sometimes, you will be interested in having an attribute that won't be shared between all the threads that run the same object. The Java Concurrency API provides a clean mechanism called thread-local variables with a very good performance.
In this ...