线程安全基础知识

Posted linluming

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线程安全基础知识相关的知识,希望对你有一定的参考价值。

一: 线程理解

    1. 当一个对象被多个线程访问时, 我们就应该考虑线程安全问题, 当某个线程对该变量访问时进行了写入修改操作,那就必须采用同步机制确保对象不变

         那么,Java中提供同步机制一个是 a.线程安全类 , b.线程安全程序
   a.线程安全类: Synchrionzed. Volatile(类型变量) 

   b.线程安全程序(字面意思)

     2. 如果当多个线程访问一个可变的变量时且没有使用合适的同步.那么就很有可能会出现问题. 当出现线程安全问题并不是很好的重现.所以更需要在设计的时候考虑该问题.

              可以从下面3个角度修复:

     a.不在线程之间共享该状态变量.也就是尽量独立使用变量

     b.将改变量修饰成不可变的变量. 

     c.当每个线程访问时,采用同步机制访问

 

以上是关于线程安全基础知识的主要内容,如果未能解决你的问题,请参考以下文章

并发编程基础01-线程安全

Java多线程基础-第一节3:线程状态和线程安全

在 Java 程序中怎么保证多线程的运行安全?

线程安全与锁优化

JAVA-基础-线程安全

多线程基础线程安全解决方案