java多线程学习-2

问1:java多线程场景下,为什么会出现线程安全问题?

》因为当多个线程操作同一个共享数据,且如果存在场景:多个线程同时操作共享数据。比如卖票会出现重票,错票(票号为负数)                                                     

问2:使用synchronized 代码块同步的这样方式,来实现线程安全,核心时有一个同步监视器(俗称锁)。锁可以为任何一个对象。如果要实现线程安全,必须要让是锁只有一把。请问synchronized(Obj)是如何实现线程安全的呢?

》使用synchronized关键字利用同步代码块和同步方法两种方式,本质上来说,都是给操作共享数据的行为上挂起一把锁,锁是唯一的,所以同时只能由一个线程实例来操作共享数据

posted @   Java民工陆小凤  阅读(103)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
点击右上角即可分享
微信分享提示