原创 10 ThreadLocal

ThreadLocal概念:線程局部變量,是一種多線程間併發訪問量的解決方案,與其synchronized等加鎖的方式不同,ThreadLocal完全不提供鎖,而使用以空間換時間的手段,爲每個線程提供變量的獨立劇本,有保障線程安全。從性能

原创 08 線程之間通信

2.1 線程之間通信線程之間概念:線程是操作系統中獨立的個體,但這些個體如果不經過特殊的處理就不能成爲一個整體,線程間的通信就成爲整體的必用方式之一。當線程存在通信指揮,系統間的交互性會更強大,在提高cpu利用率的同時還會使開發人員對線程

原创 09 使用wait/notify模擬Queue

BlockingQueue:顧名思義,首先它是一個隊列,並且支持阻塞的機制,阻塞的放入和得到數據。我們要實現LinkedBlockingQueue下面兩個簡單的方法put和take。Put:把anObject加到BlockingQueue

原创 06 synchronized代碼塊

使用synchronizd聲明的方法在某些情況下是由弊端的,比如A線程調用同步的方法執行一個很長時間的任務,那麼B線程就必須等待比較長的時間才能執行,這樣的情況下可以使用synchronized代碼塊去優化代碼執行時間,也就是通常所說的減