线程Blocked--SynchronizedDemo
生活随笔
收集整理的這篇文章主要介紹了
线程Blocked--SynchronizedDemo
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
import java.util.Random;/*** TODO 在此寫上類的相關說明.<br>* @author gongqiang <br>* @version 1.0.0 2021年6月3日<br>* @see * @since JDK 1.5.0*/
public class SynchronizedDemo {/*** 中間值.*/private Integer value;/*** @param args*/public static void main(String[] args) {final SynchronizedDemo syn = new SynchronizedDemo();new Thread(() -> {while (true) {try {synchronized (SynchronizedDemo.class) {final Integer value = new Random().nextInt();syn.value = value;System.out.println("設置共享" + value);Thread.sleep(3000);}// 休眠,讓獲取線程能夠讀取共享變量.try {Thread.sleep(100);} catch (InterruptedException e) {Thread.currentThread().interrupt();}} catch (InterruptedException e) {Thread.currentThread().interrupt();}}}).start();new Thread(() -> {while (true) {synchronized (SynchronizedDemo.class) {final Integer value = syn.value;System.out.println("獲取共享" + value);}// 休眠,讓設置線程能夠設置共享變量.try {Thread.sleep(500);} catch (InterruptedException e) {Thread.currentThread().interrupt();}}}).start();try {Thread.sleep(60 * 60 * 1000);} catch (InterruptedException e) {// 無需處理.}}
}
?
總結
以上是生活随笔為你收集整理的线程Blocked--SynchronizedDemo的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java并发编程实战~Guarded S
- 下一篇: 生产者-消费者 BlockingQueu