同步:
1.当多个线程访问同一资源时,会产生"并发访问"的问题:
2."并发性访问"的判断标准:
1).是否是多线程环境
2).是否有共享数据
3).是否有多条语句操作共享数据
3.解决方法:加锁:使用关键字:synchronized
4.语法格式:
1).同步代码块:
synchronized(被锁的对象){
}
2).同步方法:
public synchronized void set(int num){
}
3.静态方法内部也可以定义同步代码块;
public static void show(){
synchronized(class对象){
}
}
4).静态方法也可以被声明为synchronized:
public synchronized static void show(){
}
|
|