线程梳理 2

承接上一部分内容,起飞 _-~`

生命一哈,这里只是简单的知识点梳理,深挖的内容会单独更新,嘤~

线程的同步,synchronized

简介:线程同步,即当有一个线程在对内存操作时,其他线程都不可以对这个内存地址进行操作,直到线程完成操作,其他线程才能对该内存地址进行操作 

怎么操作呢? ,,不多说,上图了 - ->

 (原理可以参考上厕所问题,厕所门一关,坑位就是我的了,只有我出去了才能被其他人使用,哈哈,手动狗头)

释放锁

1、线程的同步方法或者同步代码块执行结束

2、线程的同步方法或者同步代码块遇到break,return

3、同理Error或者Exception

4、线程的同步方法或者同步代码块中执行了线程对象的wait()方法,当前线程暂停,并释放锁

下面操作不会释放锁哦:

1、线程在执行同步代码块或同步方法时,程序调用Thread.sleep() ,Thread.yield()

2、线程执行同步代码块时,其它线程调用了该线程的suspend()方法将线程挂起,该线程不会释放锁(不推荐)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值