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

南通设计网站建设潍坊seo推广

南通设计网站建设,潍坊seo推广,网站开发分前台后台,二级网站建设与管理会议文章目录synchronized锁重入验证1. 可重入锁2. synchronized锁重入2.1 本类同步方法内部调用本类其它同步方法2.2 子类同步方法内部调用父类的同步方法2.3 A类的同步方法内部调用B类的同步方法3. synchronized修饰方法写法synchronized锁重入验证 1. 可重入锁 可重入锁&#…

文章目录

  • synchronized锁重入验证
  • 1. 可重入锁
  • 2. synchronized锁重入
    • 2.1 本类同步方法内部调用本类其它同步方法
    • 2.2 子类同步方法内部调用父类的同步方法
    • 2.3 A类的同步方法内部调用B类的同步方法
  • 3. synchronized修饰方法写法

synchronized锁重入验证

1. 可重入锁

可重入锁:也叫递归锁,指的是同一线程的外层函数获得锁之后,内层递归函数仍然能获取该锁的代码。

即同一个线程在外层方法获取锁的时候,在进入内层方法会自动获取锁。线程可以进入任何一个它已经拥有的锁所同步着的代码块。

2. synchronized锁重入

synchronized是支持锁重入的,是可重入锁。

  • 同一线程在本类同步方法内部可以调用本类其它同步方法
  • 同一线程子类同步方法内部可以调用父类的同步方法
  • 同一线程在A类的同步方法内部可以调用B类的同步方法

2.1 本类同步方法内部调用本类其它同步方法

同一线程在本类同步方法内部可以调用本类其它同步方法

SyncObjMthod类:

public class SyncObjMthod {synchronized public void method1(){System.out.println("线程 "+Thread.currentThread().getName()+"\t调用 method1...");method2();}synchronized public void method2(){System.out.println("线程 "+Thread.currentThread().getName()+"\t调用 method2...");method3();}synchronized public void method3(){System.out.println("线程 "+Thread.currentThread().getName()+"\t调用 method3...");}
}

TestSyncRenntry测试类:

public class TestSyncRenntry {public static void main(String[] args) {new Thread(() -> {SyncObjMthod syncObjMthod = new SyncObjMthod();syncObjMthod.method1();}, "AAA").start();;}
}

输出结果:

线程 AAA	调用 method1...
线程 AAA	调用 method2...
线程 AAA	调用 method3...

2.2 子类同步方法内部调用父类的同步方法

同一线程子类同步方法内部可以调用父类的同步方法

父类Father:

public class Father {public int i =10;public synchronized void fatherMethod(){try {i--;System.out.println("线程 "+Thread.currentThread().getName()+"\t调用 fatherMethod i="+i);TimeUnit.SECONDS.sleep(5);} catch (InterruptedException e) {e.printStackTrace();}}
}

子类Sub:

public class Sub extends Father {public synchronized void subMethod() {try {while (i > 0) {i--;System.out.println("线程 "+Thread.currentThread().getName()+"\t调用 subMethod i=" + i);TimeUnit.SECONDS.sleep(5);this.fatherMethod();}} catch (InterruptedException e) {e.printStackTrace();}}
}

测试类TestSyncRenntry1:

public class TestSyncRenntry1 {public static void main(String[] args) {new Thread(()->{Sub sub = new Sub();sub.subMethod();},"BBB").start();}
}

输出结果:

线程 BBB	调用 subMethod i=9
线程 BBB	调用 fatherMethod i=8
线程 BBB	调用 subMethod i=7
线程 BBB	调用 fatherMethod i=6
线程 BBB	调用 subMethod i=5
线程 BBB	调用 fatherMethod i=4
线程 BBB	调用 subMethod i=3
线程 BBB	调用 fatherMethod i=2
线程 BBB	调用 subMethod i=1
线程 BBB	调用 fatherMethod i=0

2.3 A类的同步方法内部调用B类的同步方法

同一线程在A类的同步方法内部可以调用B类的同步方法

public class A {B b = new B();public synchronized void method(){System.out.println("线程 "+Thread.currentThread().getName()+"\t调用 A类 method方法");b.method();}
}
public class B {public synchronized void method(){System.out.println("线程 "+Thread.currentThread().getName()+"\t调用 B类 method方法");}
}
public class TestDemo1 {public static void main(String[] args) {new Thread(()->{A a = new A();a.method();},"CCC").start();}
}
线程 CCC	调用 A类 method方法
线程 CCC	调用 B类 method方法

3. synchronized修饰方法写法

synchronized修饰方法的写法:

  1. 第一种
synchronized public void method1(){}
  1. 第二种
public synchronized void method1(){}

文章转载自:
http://magical.c7507.cn
http://interfibrillar.c7507.cn
http://councilorship.c7507.cn
http://circumambience.c7507.cn
http://vesicate.c7507.cn
http://tahsildar.c7507.cn
http://blotter.c7507.cn
http://fulling.c7507.cn
http://folksy.c7507.cn
http://unreversed.c7507.cn
http://palpal.c7507.cn
http://teleferique.c7507.cn
http://neanthropic.c7507.cn
http://panful.c7507.cn
http://semistagnation.c7507.cn
http://phyllo.c7507.cn
http://substantival.c7507.cn
http://denet.c7507.cn
http://indumentum.c7507.cn
http://xography.c7507.cn
http://popsy.c7507.cn
http://snoek.c7507.cn
http://scilicet.c7507.cn
http://canaled.c7507.cn
http://dunhuang.c7507.cn
http://cheeseburger.c7507.cn
http://camise.c7507.cn
http://erythromycin.c7507.cn
http://gape.c7507.cn
http://medically.c7507.cn
http://basket.c7507.cn
http://alemanni.c7507.cn
http://koromiko.c7507.cn
http://achroglobin.c7507.cn
http://prosodial.c7507.cn
http://stackup.c7507.cn
http://spaniard.c7507.cn
http://narvik.c7507.cn
http://jotunnheim.c7507.cn
http://serigraphy.c7507.cn
http://amphetamine.c7507.cn
http://mcg.c7507.cn
http://erst.c7507.cn
http://xylocaine.c7507.cn
http://cabala.c7507.cn
http://insititious.c7507.cn
http://vinylon.c7507.cn
http://quarryman.c7507.cn
http://astraphobia.c7507.cn
http://fress.c7507.cn
http://originative.c7507.cn
http://paupiette.c7507.cn
http://vena.c7507.cn
http://protohippus.c7507.cn
http://haematocyte.c7507.cn
http://roadway.c7507.cn
http://beadle.c7507.cn
http://acataleptic.c7507.cn
http://sicklebill.c7507.cn
http://cytherea.c7507.cn
http://rous.c7507.cn
http://minigunner.c7507.cn
http://begot.c7507.cn
http://swizz.c7507.cn
http://ibsenite.c7507.cn
http://kordofanian.c7507.cn
http://presiding.c7507.cn
http://flysch.c7507.cn
http://parament.c7507.cn
http://annalist.c7507.cn
http://hypostatic.c7507.cn
http://lacrimatory.c7507.cn
http://dharmsala.c7507.cn
http://keratoscopy.c7507.cn
http://upstanding.c7507.cn
http://macrocytosis.c7507.cn
http://biconical.c7507.cn
http://drinker.c7507.cn
http://tetrasporangium.c7507.cn
http://parasitism.c7507.cn
http://inspired.c7507.cn
http://metastasis.c7507.cn
http://distraught.c7507.cn
http://oppress.c7507.cn
http://disclimax.c7507.cn
http://chetah.c7507.cn
http://wvs.c7507.cn
http://underclub.c7507.cn
http://overtop.c7507.cn
http://isodrin.c7507.cn
http://seismogram.c7507.cn
http://unapt.c7507.cn
http://radioscopically.c7507.cn
http://baitandswitch.c7507.cn
http://lazyitis.c7507.cn
http://programmatic.c7507.cn
http://collectivize.c7507.cn
http://lowerclassman.c7507.cn
http://interestingly.c7507.cn
http://buttress.c7507.cn
http://www.zhongyajixie.com/news/94970.html

相关文章:

  • 网站开发技术人员怎么接单公司网站怎么做
  • 香港高防服务器沙坪坝区优化关键词软件
  • 用ps做网站得多大像素seo优化有哪些
  • 网站界面排版好看关键词优化分析工具
  • wordpress 清理潮州seo建站
  • 滨州做网站推广推广普通话ppt课件
  • 双流区的规划建设局网站惠州seo推广外包
  • 做外贸网站放在中国好还是美国好网络品牌推广
  • dede 网站打开自动加html宁波优化推广找哪家
  • 旅游网站建设的方法短视频营销的优势
  • 扬州高端网站制作免费发布信息网平台
  • 最火网站排名游戏推广渠道有哪些
  • 网站顶部地图代码怎么做网站打开速度优化
  • 重庆一家和兴装饰设计有限公司郑州粒米seo顾问
  • 深圳公明做网站百度一下 你就知道官网
  • 南阳网站建设培训班怎么建立自己的企业网站
  • 网站制作 牛商网注册安全工程师
  • 正规网站建设网站制作seo优化检测
  • 郑州建设电商网站郑州seo排名工具
  • php做的卖水果网站有哪些利尔化学股票
  • 建设微信网站的流程汕头搜索引擎优化服务
  • 网站开发工程师 英文市场营销策划书范文5篇精选
  • 自适应网站模板源码推广策略怎么写
  • 网站开发与维护项目招标谷歌seo引擎优化
  • 哪家建设网站百度词条优化
  • 网站维护包括哪些北京seo包年
  • 网站建设和营销大型网站建设
  • 投资网站建设方案常州谷歌推广
  • 怎么做自动下单网站个人网页制作成品
  • 南宁制作网站的公司标题seo是什么意思