概述 CMS 是 Concurrent Mark Sweep 的縮寫,由名字可知是一款并行的用標記清除算法的收集器,其收集目標是以獲取最短回收停頓時間的收集器,其是作用于老年...

概述 CMS 是 Concurrent Mark Sweep 的縮寫,由名字可知是一款并行的用標記清除算法的收集器,其收集目標是以獲取最短回收停頓時間的收集器,其是作用于老年...
枚舉根節點的效率 枚舉根節點是必須要停頓用戶線程的會引起 stop the world,如果按照上文所說的所有 GCRoots 去主動遍歷它們,將會是一個相當耗時的過程,顯然...
整體介紹 線索二叉樹是鏈表表示的樹,它是利用了二叉樹未被使用的 n + 1個閑置的指針構成的樹;根據二叉樹的三種遍歷方式構成了三種不同的線索二叉樹;二叉樹的遍歷只能從根結點開...
概述 在上一篇文章中介紹了 JDK 中提供的線程池類 ThreadPoolExecutor 以及線程池的參數,在實際使用中需要了解個參數的含義從而才能正確的使用線程池來達到我...
LockSupport 的功能 LockSupport 是JDK 中提供的一個工具類,用來掛起和喚醒線程,這個類是 JDK 中所有同步類的基礎,JDK 中 AQS 的實現也是...
概述 這次介紹的是 Java8 中提供的一些日期類,它們是借鑒了 Joda Time 實現的一個更方便進行日期操作的工具類的集合,下面介紹這些類的含義以及大概的使用方法。 L...
避免使用 setNx 命令 1、setNx 帶來的問題 在使用 setNx 命令來給程序加分布式鎖的時候,一般都需要再使用 expire 命令來設置一個過期時間,避免死鎖現象...
ThreadLocal 能做什么 ThreadLocal 是 JDK 提供的一個工具類,它可以為每個使用它的線程創建一個線程本地的副本,從而能保證多個線程在訪問時的安全問題。...
什么是死鎖 首先死鎖的產品肯定是發生在兩個或者兩個以上的線程之間,因為線程請求獨占資源時,由于資源被對方占用,自身被掛起等待;從而造成相互等待,在沒有干預時,將會一直等待下去...
停止線程的方式 在 Java 中停止線程的方式有三種:1、線程的 run 方法執行到最后,線程正常結束并退出;2、使用 Thread 類提供的 stop 方法去停止一個正在運...
概念介紹 要讓當前正被 CPU 執行的線程讓度出 CPU,其實有兩種方式。一種是被動的,比如當前線程需要進行 IO 操作;但是這里討論的是一種主動讓度的方式。而要達到主動的讓...