posts - 4, comments - 16, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          Author : mercyblitz
          Version: 0.1
          Update : 2010-08-27 4:26PM
          Email:  mercyblitz@gmai.com


          1.  基礎    
              1.1  摩爾定律  

              1.2  多處理器時代
                  1.2.1  對稱多處理( Symmetric Multi-Processor, a.k.a SMP)
                  1.2.2  非對稱多處理( ASymmetric Multi-Processor, a.k.a ASMP)
                  1.2.3  非統(tǒng)一內(nèi)存訪問( a.k.a NUMA)

              1.3  共享內(nèi)存(Shared Memory)

              1.4  CPU 緩存
                  1.4.1  緩存一致性(Cache coherence)
                  1.4.2  MESI協(xié)議(MESI protocol)

              1.5  線程
                  1.5.1  起源(Source)
                  1.5.2  優(yōu)勢(Advantages)
                  1.5.3  類型(Types)
                  1.5.4  模型(Models)
                  1.5.5  實現(xiàn)(Implementations)
                  1.5.6  安全(Security)

              1.6  內(nèi)存模型  (Memory Model)
                  1.6.1  可見性(Visibility)
                  1.6.2  原子性(Atomicity)
                  1.6.3  順序性(Order)
              
              1.7  互斥( Mutual Exclusion)
                  1.7.1  阻塞同步( Blocking Synchronization)
                  1.7.1.1 臨界區(qū)(Critical Section)
                  1.7.1.2  鎖(Lock)
                      1.7.1.2.1  類型(Types)
                      1.7.1.2.1.1  自旋鎖(Spinning Lock)
                      1.7.1.2.1.2  標簽鎖(Ticket Lock)
                      1.7.1.2.1.3  偏向鎖(Biased Lock)*
                      1.7.1.2.2   數(shù)據(jù)庫鎖(Database Lock)*
                          1.7.1.2.2.1   消極鎖
                          1.7.1.2.2.2   樂觀鎖
                      1.7.1.2.3  問題(Problems)
                          1.7.1.2.3.1  活鎖(Live Lock)
                          1.7.1.2.3.2  死鎖(Dead Lock)
                          1.7.1.2.3.3  優(yōu)先級倒置(Priority Inversion)
                          1.7.1.2.3.4  其他(Others)            

                  1.7.2 非阻塞同步(Non-Blocking Synchronization)
                      1.7.2.1  Wait-free算法
                          1.7.2.1.1  比較交換算法(Compare-And-Swap, a.k.a CAS)
                          1.7.2.1.2  連接加載/條件存儲(Load-link/Store-conditional)
                      1.7.2.1.3  ABA問題
                      1.7.2.2  Lock-free
                      1.7.2.3  Obstruction-free

                  1.7.3  重進入(Reentrant)

                  1.7.4  監(jiān)視器(Monitor)
                      1.7.4.1  等待和信號(Wait and Signal)
                      1.7.4.2  條件變量(Condition Variable)

                  1.7.5  信號燈(Semaphore)

                  1.7.6  雙檢查鎖(Double-Checked Locking, a.k.a DCL)

              1.8  內(nèi)存柵欄(Memory Barrier/Fence)

              1.9  一致性模型(Consistency Model)
                  1.9.1  原子一致性( Atomic consistency)
                  1.9.2  連續(xù)一致性(Sequential  Consistency)
                  1.9.3  因果一致性(Causal Consistency)        
                  1.9.4  釋放一致性(Release Consistency)        
                  1.9.5  最終一致性(Eventual Consistency)
                  1.9.6  Delta一致性(Delta Consistency)        
                  1.9.7  弱一致性(Weak Consistency)        
                  

              1.10  并發(fā)控制(Concurrency Control)
                  1.10.1  軟件事務存儲(Software Transactional Memory,a.k.a STM)
                           
          2.  Java 基礎
              2.1  Java同步原語
                  2.1.1  synchronized關鍵字
                  2.1.2  volatile 關鍵字
                  2.1.3  CAS操作-AtomicX

              2.2  Java內(nèi)存模型
                  2.2.1  可見性(Visibility)
                  2.2.2  原子性(Atomicity)
                  2.2.3  順序性(Order)
                  2.2.4  Happens-Before

              2.3  java.lang.Thread
                  2.3.1  狀態(tài)(State)
                  2.3.2  啟動-Thread.start方法
                  2.3.3  棄用Thread.stop, Thread.suspend 和 Thread.resume方法
                  2.3.4  終止Thread.interrupt和Thread.interrupted方法
                  2.3.5  Thread.join方法
                  2.3.6  Object.wait/notify方法
                  2.3.7  Thread.wait方法


          3.  Java并發(fā)框架
              3.1J.U.C框架
                  3.1.1  同步
                      3.1.1.1  核心-AbstractQueuedSynchronizer
                      3.1.1.2  重進入鎖-ReentrantLock
                      3.1.1.3  重進入讀寫鎖-ReentrantReadWriteLock
                      3.1.1.4  條件變量-Condition
                      3.1.1.5  新通知/信號機制-LockSupport

                  3.1.2  限制
                      3.1.2.1  CountDownLatch
                      3.1.2.2  CyclicBarrier
                      3.1.2.3  信號燈(Semaphore)

                  3.1.3  原子操作  
                            3.1.3.1  Atomic*類
                            3.1.3.2  操作實現(xiàn)-sun.misc.Unsafe

                  3.1.4  線程安全集合
                            3.1.4.1  CopyOnWriteArrayList和CopyOnWriteArraySet
                            3.1.4.2  ConcurrentSkipListMap和ConcurrentSkipListSet
                            3.1.4.3  ConcurrentHashMap
                            3.1.4.4  ArrayBlockingQueue
                            3.1.4.5  LinkedBlockingQueue和ArrayBlockingDueue
                            3.1.4.5  PriorityBlockingQueue    

                  3.1.5  線程池
                            3.1.5.1  Executor
                            3.1.5.2  ThreadPoolExecutor
                            3.1.5.3  Callable和Future
                            3.1.5.4  ScheduledExecutorService
                            3.1.5.5  Executors

          4. JVM并發(fā)實現(xiàn) **
              4.1  線程(Thread)實現(xiàn)
              4.2  監(jiān)視器(Monitor)實現(xiàn)
              4.3  可見性實現(xiàn)
              4.4  原子性實現(xiàn)
              4.5  順序性實現(xiàn)
              4.6  其他


          說明:

              1. 在標題后面帶有符號“*”,代表這個內(nèi)容可能有點于偏離主題。帶有“**”的內(nèi)容,可能比較難以理解。


             2. 由于知識體系比較繁雜,組織起來比較寬難,因此目錄結構很有可能不斷地更新。該文章的Update部分或者標題也會同步更新。


              3.一旦章節(jié)的內(nèi)容完結,目錄會即時更新鏈接,請大家留意。

              4.作者能力和學識有限,如果讀者還有更加感興趣的議題,或者任何錯誤、意見和建議,不妨直接留言或者發(fā)郵件來討論。如果能夠合著的話,那是更加完美了。


              5.文章轉載前,請聯(lián)系文章的作者。

          謝謝 ,EOF!


          評論

          # re: 《深入Java并發(fā)》- 目錄(v0.1)[未登錄]  回復  更多評論   

          2010-08-27 20:07 by kalman03
          超級期待,樓主加油

          # re: 《深入Java并發(fā)》- 目錄(v0.1)  回復  更多評論   

          2010-08-27 20:10 by Mercy
          @kalman03
          謝謝!

          # re: 《深入Java并發(fā)》- 目錄(v0.1)[未登錄]  回復  更多評論   

          2010-08-30 10:44 by 行云流水
          期待樓主。

          # re: 《深入Java并發(fā)》- 目錄(v0.1)  回復  更多評論   

          2010-08-30 17:23 by 攝魂
          怎嘛只上了目錄,

          # re: 《深入Java并發(fā)》- 目錄(v0.1)  回復  更多評論   

          2010-08-30 17:32 by Mercy
          稍候發(fā)布,請等待!

          # re: 《深入Java并發(fā)》- 目錄(v0.1)  回復  更多評論   

          2010-08-31 12:00 by zouyazhou
          很感謝樓主的分享,期待樓主的佳作!~

          # re: 《深入Java并發(fā)》- 目錄(v0.1)  回復  更多評論   

          2010-09-01 13:28 by Mercy
          更新咯:

          http://www.aygfsteel.com/mercyblitz/archive/2010/09/01/330539.html

          # re: 《深入Java并發(fā)》- 目錄(v0.1)  回復  更多評論   

          2012-04-19 16:09 by Freish
          同對java并發(fā)有興趣,歡迎加入java并發(fā)討論群:229609257
          主站蜘蛛池模板: 章丘市| 抚州市| 观塘区| 昭通市| 外汇| 习水县| 平邑县| 泗洪县| 闵行区| 海淀区| 旺苍县| 商都县| 新龙县| 白沙| 盐城市| 荆门市| 扎囊县| 伊宁市| 周宁县| 凤凰县| 曲麻莱县| 二连浩特市| 永寿县| 广丰县| 漠河县| 遂昌县| 西藏| 雷山县| 大方县| 淮安市| 洱源县| 武胜县| 信丰县| 元氏县| 罗江县| 专栏| 抚松县| 抚州市| 田东县| 达日县| 怀化市|