
目录
大家好,我是哪吒。
上一章提到了i++的线程安全问题,最终方案是在两个方法上添加synchronized关键字,从而避免i++的线程安全问题,不过,这样真的好吗?在所有有线程安全的方法都添加synchronized?
答案是显而易见的,不行。
synchronized会极大的降低程序的性能,导致整个程序几乎只能支持单线程操作,性能显著降低。
那么,如何解决呢?
一、降低锁的粒度,将synchronized关键字不放在方法上了,改为synchronized代码块。
锁的粒度更小了,也解决了这个问题,确实可以的。
package com.guor.thread;
public class
本文探讨了在Java高并发编程中,降低锁粒度以优化性能,详细解释了公平锁与非公平锁的概念、优缺点,并给出了示例。同时,介绍了Java8的并行流`parallel()`的使用,包括其工作原理、优缺点和适用场景。
订阅专栏 解锁全文
360

被折叠的 条评论
为什么被折叠?



