我刚刚从第17页开始阅读Java Concurrency in Practice:
我们使用了“线程安全类”和“线程安全程序”这两个术语 到目前为止几乎可以互换。是一个线程安全的程序 完全由线程安全的类构成?不一定是 - a 完全由线程安全类组成的程序可能不是 线程安全,并且线程安全的程序可能包含类 不是线程安全的。
答案 0 :(得分:5)
有两种基本情况可以:
非线程安全对象仅限于单个线程。
对共享的非线程安全对象的访问由使用它们的线程进行外部协调。非常简单的例子:通过同步所有访问权限
synchronized( sharedObject ) {
sharedObject.access();
}
答案 1 :(得分:1)
因为局部变量只能由单个线程访问,所以程序可以是线程安全的,并使用局部变量,其类在其他情况下是非线程安全的。