如何写线程安全代码一 - CunDeveloper/com.nju.edu.cn.software.school.friend.service GitHub Wiki
1.什么是线程安全代码
线程安全代码是指多个线程访问同一个共享资源时不能够去更新共享资源
2. 局部基本类型变量
由于局部变量存储在每个线程自己的线程栈中。因此局部变量不能在线程之间进行共享。即所有的局部基本类型的变量都是线程安全的。
public void someMethod(){
long threadSafeInt = 0;
threadSafeInt++;
}
3. 局部引用类型变量
局部引用变量有点不同,局部引用变量自己本身是不被线程共享的。但是,局部引用变量不会存储在自己的线程栈中,而是存储在一个共享的堆中。即所有的对象都存储在共享堆中。 如果在一个方法中创建的局部引用变量只在本方法内使用,即不会传递到其他方法去修改值。这个局部引用变量将是线程安全的。