synchronized锁重入——T2107

package 对象及变量的并发访问2;

/**
 * synchronized锁重入
 *   关键字synchronized拥有重入锁的功能,即在使用synchronized时,当一个线程得到一个对象锁后,再次请求此对象锁时
 * 是可以得到该对象的锁的,这就证明了synchronized方法/快内部调用本类凡人其他synchronized方法/快时,是永远可以得到锁的。
 *
 *   “可重入锁”是指自己可以再次获得自己的内部锁,如:一个线程获得了某个对象锁,此时这个对象锁还没有释放,当其再次想要获得
 * 这个对象锁时还是可以获取的。
 */

class ServerT217{
  synchronized  public void ServerT217(){
      System.out.println("Server1");
      Server2T217();
    }

   synchronized private void Server2T217() {
       System.out.println("Server2");
       Server3T217();
    }

    private void Server3T217() {
        System.out.println("Server3");
    }
}

class MyThreadT217 extends Thread{
    @Override
    public void run() {
        ServerT217 serverT216=new ServerT217();
        serverT216.ServerT217();
    }
}

class RunT217{
    public RunT217(){
        MyThreadT217 myThreadT217=new MyThreadT217();
        myThreadT217.start();
    }
}
public class T2107 {
    public static void main(String[] args) {
        RunT217 runT217=new RunT217();
    }
}

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值