Java中的多线程安全问题(一)( 四 )
同步的是实例方法:则当前同步对象是this , 指代当前调用该方法的对象实例 。
同步的是静态方法:则当前同步对象是类对象 , 即:XXX.class 。 指代的是当前类的类对象 。
静态方法使用synchronized后 , 则该同步方法一定是线程安全的 。 因为一个类对象只有一份 。 而实例方法则不一定 。
3、使用线程同步的好处与弊端
<1>同步的好处
解决了多线程的安全问题 , 确保程序的正确性 。
<2>同步的弊端
由于加了同步语句块 , 导致一个线程访问时 , 其他线程不能访问 , 所以降低了程序的运行效率 。
4、什么时候该用同步访问
<1>同步的前提是在多个线程的情况下使用 。
<2>同步必须使用同一个同步对象 。
<3>只有满足多个线程下 , 锁定的同步对象是同一个的情况 , 才能够解决线程安全问题 。
推荐阅读
- 热血传奇|热血传奇:当年心中的巅峰,随便一件无比骄傲
- 手办|原神:“肝帝”再现!玩家花30天自制胡桃手办,手中的护摩亮了
- edg战队|EDG夺冠可谓是小说中的梦幻剧情,先破RNG再废GEN.G,豪虐DK夺冠
- 亚运会|LOL入选亚运会正赛,你心中的阵容怎么选?
- 孙权|三国杀:背景帝!武将皮肤中的最强客串王,孙十万果然名不虚传
- 夏侯惇|王者荣耀之中的“最强坦克”, 夏侯惇和程咬金你更喜欢谁?
- 穿越火线|轻松上手,赶超雷神:盘点CF中那些神枪中的天之骄子
- 明日之后|消逝的光芒2设计师:明日之后打造了我心目中的人尸大决战
- 老玩家|天龙网游:天龙游戏中的神奇玩法,没有经历过别说自己是老玩家
- 魔兽世界|魔兽世界玩家未解之谜,王者荣耀中的死亡骑士,得到授权了吗?