当前位置: 首页 > wzjs >正文

免费做的英文网站石家庄网站快速备案

免费做的英文网站,石家庄网站快速备案,做一网站要什么软件有哪些,八里庄街道网站建设在 Java 中,每一个对象都可以作为一把锁,synchronized 通过获取对象头中的锁标志位来实现同步。当一个线程获取到对象的锁后,其他线程就无法再获取该锁,只能等待获取到锁的线程释放锁之后才能继续执行被 synchronized 修饰的代码块…

在 Java 中,每一个对象都可以作为一把锁,synchronized 通过获取对象头中的锁标志位来实现同步。当一个线程获取到对象的锁后,其他线程就无法再获取该锁,只能等待获取到锁的线程释放锁之后才能继续执行被 synchronized 修饰的代码块或方法。synchronized 本质上就是 Java 语言层面实现的一种互斥锁

背景

为了增加并发度,降低锁的粒度,增加多把锁;

一间大屋子有两个功能:睡觉、学习,互不相干。 现在小南要学习,小女要睡觉,但如果只用一间屋子(一个对象锁)的话,那么并发度很低 解决方法是准备多个房间(多个对象锁)

package cn.itcast.n4;import static cn.itcast.n2.util.Sleeper.sleep;import cn.itcast.n2.util.Sleeper;
import lombok.extern.slf4j.Slf4j;public class TestMultiLock {public static void main(String[] args) {BigRoom bigRoom = new BigRoom();new Thread(() -> {bigRoom.study();},"小南").start();new Thread(() -> {bigRoom.sleep();},"小女").start();}
}@Slf4j(topic = "c.BigRoom")
class BigRoom {private final Object studyRoom = new Object();private final Object bedRoom = new Object();public void sleep() {synchronized (bedRoom) {log.debug("sleeping 2 小时");Sleeper.sleep(2);}}public void study() {synchronized (studyRoom) {log.debug("study 1 小时");Sleeper.sleep(1);}}}

死锁问题

如果出现一个线程同时获取多把锁的情况,而且不是按照相同的顺序加锁的,可能会出现死锁问题

package cn.itcast.n4.deadlock;import lombok.extern.slf4j.Slf4j;import static cn.itcast.n2.util.Sleeper.sleep;@Slf4j(topic = "c.TestDeadLock")
public class TestDeadLock {public static void main(String[] args) {test1();}private static void test1() {Object A = new Object();Object B = new Object();Thread t1 = new Thread(() -> {synchronized (A) {log.debug("lock A");sleep(1);synchronized (B) {log.debug("lock B");log.debug("操作...");}}}, "t1");Thread t2 = new Thread(() -> {synchronized (B) {log.debug("lock B");sleep(0.5);synchronized (A) {log.debug("lock A");log.debug("操作...");}}}, "t2");t1.start();t2.start();}
}

定位

解决

按照相同的顺序加锁


文章转载自:

http://TrRb1XoU.pwxkn.cn
http://ykcxVShr.pwxkn.cn
http://X47dAjRv.pwxkn.cn
http://hzDcJRdB.pwxkn.cn
http://Eu8xpaSP.pwxkn.cn
http://m7ocRjTG.pwxkn.cn
http://e3GyDGpG.pwxkn.cn
http://aAtIxkLe.pwxkn.cn
http://AUTDQVof.pwxkn.cn
http://1g91Lis4.pwxkn.cn
http://aucGWBgF.pwxkn.cn
http://Nl1k2gNc.pwxkn.cn
http://iRCqYiY0.pwxkn.cn
http://iw7HFZv4.pwxkn.cn
http://bdrWqXMp.pwxkn.cn
http://JWGLgpQJ.pwxkn.cn
http://wngOu2SK.pwxkn.cn
http://PUxSu6Vw.pwxkn.cn
http://zbMWtfZQ.pwxkn.cn
http://N0Iso2Yz.pwxkn.cn
http://pKPXlhju.pwxkn.cn
http://NIVYq3G7.pwxkn.cn
http://90ik66Gp.pwxkn.cn
http://sA84YhFw.pwxkn.cn
http://S3zejbER.pwxkn.cn
http://03QeNU6c.pwxkn.cn
http://JEztuAlQ.pwxkn.cn
http://92YjUuf7.pwxkn.cn
http://dbJBIjr0.pwxkn.cn
http://EapscmWY.pwxkn.cn
http://www.dtcms.com/wzjs/660484.html

相关文章:

  • 安阳网站建设安阳制作网页软件免费
  • 网站建设制作一个网站的费用上海网站建设公司服务有哪些
  • 网站制作企业网站免费建站人生若只初相见04
  • 网站上的图用美图秀秀做可以吗wordpress 文章左右分栏
  • 设置自己的网站石家庄免费专业做网站
  • 做网站推广如何站长工具seo综合查询分析
  • 湛江市住房和城乡建设局网站赣州港招聘信息
  • 那个网站卖数据库百度代理推广
  • 怎么做网站多少钱广州集美组设计公司官网
  • 建站系统的应用场景图片外链工具
  • 放心的网站建设代理学做前端的网站
  • server2012做网站论述网站推广的方法与技巧
  • 横沥网站建设公司地域文化创意产网站建设规则
  • 厦门建行网站网络营销的基本方法
  • 网站后台密码修改网站关键词的选择
  • dedecms 英文网站深圳福田天气
  • 怎么让网站快速被收录局域网网站建设的步骤过程
  • 电子商务网站规划报告手机app制作费用
  • 有没有直接做网站的软件编程培训班学费是多少
  • 网站建设营销技巧购物网站建设推进表
  • 建站公司还有前途吗在电脑上建设网站
  • 新的网站的建设步骤电商平台怎么加入
  • 1元涨1000粉丝网站动感地带套餐
  • 福建有没有网站做一件代发安装wordpress 建立数据库连接时出错
  • 网站设计 html5网站关键词连接符
  • 手车做网课网站多少数字短链接生成
  • 大航母网站建设流程企业名录搜索软件免费
  • 国外建站工具番禺网站建设找哪家
  • 中国住房和城乡建设厅网站精通网站建设 全能建站密码pdf
  • 手机端网站开发建设内容广州网络营销服务公司