java 雜湊表和執行緒安全
java優化程式設計-雜湊表類:
執行緒安全的雜湊表類:
java.util.Vector/java.util.Hashtable
非執行緒安全的雜湊表類:
java.util.ArrayList/java.util.HashMap
在需要做執行緒同步以及要求執行緒安全的場合,開發人員應儘量使用執行緒安全的雜湊表類;
在不需要執行緒安全的場合,為了提高系統效能,開發人員應儘量選用非執行緒安全的雜湊表類;
因為執行緒安全的雜湊表會將原本可以並行處理的多執行緒進行排隊,將轉化為序列處理,從而導致系統效能下降。
ArrayList類可以通過下列方法標識成執行緒安全的類:
List list = Collections.synchronizedList(new ArrayList());
-----------------------------------------
java優化程式設計-ArrayList與LinkedList:
ArrayList(陣列物件)與LinkedList(連結串列物件)是java中的兩個專門用來處理資料元素列表的類。
這兩個類在效能特性方面存在較大差別,差別源於它們不同的儲存結構。
ArrayList是通過內部資料結構Object[]實現的;
而LinkedList是通過將一系列的內部記錄連線在一起實現的。
它們效能的差異使它們擁有各自不同的適用場合。
當需要在某個位置新增一個新元素時,應該使用LinkedList來提高系統效能。
因為當在ArrayList的某個位置新增一個新元素時,系統會把此位置之後的所有元素向後推移,這個動作相當耗時。
而在LinkedList的某個位置新增一個新元素時,系統只需給此新元素新增一個與相鄰物件的引用連線,這個動作相當廉價。
ArrayList適用在查詢某個已存在元素的場合。
--------------------------------------------------------
java優化程式設計-瞬間值:
在做遠端方法呼叫(RMI)應用開發時,將傳遞物件中不需要的屬性標記為“瞬間值”,使其不被傳遞,來節約網路開銷,
提高傳輸速度,提高系統效能,並且還可以節約呼叫端執行環境的記憶體資源。
----------------------------------------------------------------------------------------
設定ArrayList初始化容量:
如果有一個很大的陣列,並且你已經預料到此陣列會變的異常龐大,那麼這裡給出一個方法用來提高新增新元素的速度,做好初始化操作。
呼叫ArrayList物件中的ensureCapacity(int size)方法;
============================================
相關文章
- 深入理解雜湊表(JAVA和Redis雜湊表實現)JavaRedis
- Java執行緒安全Java執行緒
- Java - 執行緒安全Java執行緒
- 雜湊表(雜湊表)詳解
- JAVA 實現 - 雜湊表Java
- Java執行緒(一):執行緒安全與不安全Java執行緒
- 執行緒安全和執行緒不安全理解執行緒
- 雜湊表(雜湊表)原理詳解
- 【Java多執行緒】執行緒安全的集合Java執行緒
- java多執行緒的雜談Java執行緒
- java執行緒安全LockJava執行緒
- Java 多執行緒基礎(四)執行緒安全Java執行緒
- 雜湊表
- 幾道和雜湊(雜湊)表有關的面試題面試題
- 什麼是執行緒安全和執行緒不安全執行緒
- 詳解Java執行緒安全Java執行緒
- Java 執行緒安全 與 鎖Java執行緒
- Java執行緒安全小結Java執行緒
- java執行緒安全問題Java執行緒
- 【尋跡#3】 雜湊與雜湊表
- 10、Java併發性和多執行緒-執行緒安全與不可變性Java執行緒
- 安全的雜湊
- 字串雜湊表字串
- 6.7雜湊表
- Java併發實戰一:執行緒與執行緒安全Java執行緒
- Java多執行緒中執行緒安全與鎖問題Java執行緒
- 查詢(3)--雜湊表(雜湊查詢)
- 執行緒安全和不可重入執行緒
- JAVA資料結構之雜湊表Java資料結構
- 雜湊表的程式碼實現(Java)Java
- Java基礎之執行緒安全Java執行緒
- java進階(38)--執行緒安全Java執行緒
- 【Java】ConcurrentHashMap執行緒安全技巧JavaHashMap執行緒
- 深入JAVA執行緒安全問題Java執行緒
- java中執行緒安全的集合Java執行緒
- java synchronized 保護執行緒安全Javasynchronized執行緒
- java執行緒之守護執行緒和使用者執行緒Java執行緒
- 多執行緒安全性和Java中的鎖執行緒Java