同步方法中,调用了非同步方法,此时对于非同步方法来说,是否是线程安全的,这个非同步方法是否也等于拥有了锁??

来源:4-3 七种常见情况之6和7

仙女座舜

2021-11-23 23:46

同步方法中,调用了非同步方法,此时对于非同步方法来说,是否是线程安全的,这个非同步方法是否也等于拥有了锁??

写回答 关注

2回答

  • 慕莱坞8286419
    2024-04-19 14:47:30

    盲猜不安全,可以试一下,应该是同步执行,执行非同步方法不需要获取锁直接执行,执行同步方法才需要获取锁

  • 18948672
    2022-02-13 17:47:02

    我认为是安全的,即使有再多的线程访问非同步方法,由于同步方法的调用相当于只有一把锁,谁拿到谁才可以执行下一步程序,仍然是在按顺序执行,相当于课程里面讲到的第四种情况,把非同步方法写入同步方法内,大致和嵌套循环差不多,唯一需要注意的是非同步方法在进行多个线程之后,有没有足够的地址临时存储产生的结果。

    以上纯属个人意见,欢迎大家斧正。

Java高并发之魂:synchronized深度解析

从0开始彻底学会高并发场景下不得不会的synchronized

36591 学习 · 27 问题

查看课程

相似问题