方法一:动态同步锁 class Demo_thread implements Runnable{ public static int sum = 0; public synchronized void add(){//同步锁,为动态方法 for(int i=0;i<5000;i++){ sum = sum + 1; } } public void run(){ add(); } } 动态同步锁适用于Runnable类中不适用与Thread类,因为其锁的对象为当前实例对象,一个Thread类只能跑…
关键字synchronized还可以应用在static静态方法上,这样写那是对当前的*.java文件对应的class类进行持锁, 测试如下 package com.cky.bean; /** * Created by edison on 2017/12/8. */ public class Service { synchronized public static void printA() { try { System.out.println("printA ThreadName"+T…