在多个线程共享资源的时候,对共有的资源要进行线程安全保护。为什么要这样做?你懂得
线程同步就是给共享的资源加一个锁,加锁的方式有两种:第一种就是这次我要详细说的synchronized关键字:第二种Lock类在下一篇中进行介绍:
同步代码块
顾名思义就是给代码块加上synchronized关键字修饰。
什么是代码块?就是一段代码比如:
{
int name ="jack";
System.out.println("name=" + name);
}
知道了代码块,我接着说同步代码块
给上面的代码块回加上synchronized修饰就是同步代码块了,看面就知道很简单了
synchronized(name){
int name ="jack";
System.out.println("name=" + name);
}
这就是同步代码块
obj---同步监视器
用共享资源做为同步器,例如上面的name
同步方法
同步方法就是在方法上加synchronized修饰的方法
pulic synchronized void output(String name){
System . out . println ( "name=" + name );
}
多线程环境下只对共享的资源进行同步
只有一个线程时不用同步