JAVA
文章平均质量分 90
程序员 Super V
这个作者很懒,什么都没留下…
展开
-
浅谈Java锁机制
公平锁和非公平锁是并发编程中的概念,用于控制多个线程对共享资源的访问。它们的区别在于线程获取锁的顺序和策略。公平锁(Fair Lock)是指多个线程按照申请锁的顺序来获取锁的访问权。当一个线程释放锁之后,等待时间最长的线程将获得锁的访问权。公平锁的优点是保证了资源的公平性,避免了线程饥饿现象,但可能会导致额外的线程上下文切换开销。非公平锁(Unfair Lock)则没有按照申请锁的顺序来获取锁的访问权,允许新申请锁的线程插队,优先抢占锁的访问权。原创 2023-05-28 16:45:29 · 143 阅读 · 0 评论 -
GC垃圾回收机制
在java程序运行的过程中,会产生大量的对象,因每个对象所能承担的职责不同所具有的功能不同所以也有着不一样的生命周期,有的对象生命周期较长,比如Http请求中的Session对象,线程,Socket连接等;所以这几个区域的内存分配与回收是确定的,我们不需要管的。当JVM触发GC时,首先会让所有的用户线程到达安全点SafePoint时阻塞,也就是STW,然后枚举根节点,即找到所有的GC Roots,然后就可以从这些GC Roots向下搜寻,可达的对象就保留,不可达的对象就回收。所以,垃圾回收是必须的。原创 2023-05-27 22:15:09 · 5085 阅读 · 1 评论