Synchronized主要有以下几种用法:
1. 加在方法上:这里包括加在实例方法上、加在静态方法上。
2. 方法块:这里包括锁定this、锁定Class、锁定实例对象、锁定静态对象。
今天主要通过例子演示一下第一个用法:锁定不同的实例对象或不同的静态对象时,不同的函数方法之间的相互影响。
首先是锁定不同的实例对象时
测试代码如下:
import org.junit.Test;import java.util.Scan...
Java-Synchronized用法(4)
Synchronized主要有以下几种用法:
1. 加在方法上:这里包括加在实例方法上、加在静态方法上。
2. 方法块:这里包括锁定this、锁定Class、锁定实例对象、锁定静态对象。
今天主要通过例子演示一下第一个用法:加在实例方法上和加在静态方法上时,不同的函数方法之间的相互影响。
首先是加在实例方法上
测试代码如下:
import org.junit.Test;import java.util.Scanner;public...
Java-Synchronized用法(3)
Synchronized主要有以下几种用法:
1. 加在方法上:这里包括加在实例方法上、加在静态方法上。
2. 方法块:这里包括锁定this、锁定Class、锁定实例对象、锁定静态对象。
今天主要通过例子演示一下第二个用法:锁定实例对象和锁定静态对象。
首先是锁定实例对象
测试代码如下:
package com.xnck.example.sbtest;import org.junit.Test;import java.util.Scanner;public&...
Java-Synchronized用法(2)
Synchronized主要有以下几种用法:
1. 加在方法上:这里包括加在实例方法上、加在静态方法上。
2. 方法块:这里包括锁定this、锁定Class、锁定实例对象、锁定静态对象。
今天主要通过例子演示一下第二个用法:锁定this和锁定class。
首先是锁定this
测试代码如下:
1package com.xnck.example.sbtest; 2 3import org.junit.Test; 4 5public class ThreadTest ...
Java-Synchronized用法(1)
Synchronized主要有以下几种用法:
1. 加在方法上:这里包括加在实例方法上、加在静态方法上。
2. 方法块:这里包括锁定this、锁定Class、锁定实例对象、锁定静态对象。
今天主要通过例子演示一下第一个用法:加在实例方法上和加在静态方法上。
首先是加在实例方法上
测试代码如下:
1import org.junit.Test; 2 3import java.util.Scanner; 4 5public class Threa...