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.  基礎(chǔ)    
              1.1  摩爾定律  

              1.2  多處理器時(shí)代
                  1.2.1  對(duì)稱多處理( Symmetric Multi-Processor, a.k.a SMP)
                  1.2.2  非對(duì)稱多處理( 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)勢(shì)(Advantages)
                  1.5.3  類型(Types)
                  1.5.4  模型(Models)
                  1.5.5  實(shí)現(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  標(biāo)簽鎖(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)先級(jí)倒置(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  連接加載/條件存儲(chǔ)(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  重進(jìn)入(Reentrant)

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

                  1.7.5  信號(hào)燈(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  軟件事務(wù)存儲(chǔ)(Software Transactional Memory,a.k.a STM)
                           
          2.  Java 基礎(chǔ)
              2.1  Java同步原語
                  2.1.1  synchronized關(guān)鍵字
                  2.1.2  volatile 關(guān)鍵字
                  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  啟動(dòng)-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  重進(jìn)入鎖-ReentrantLock
                      3.1.1.3  重進(jìn)入讀寫鎖-ReentrantReadWriteLock
                      3.1.1.4  條件變量-Condition
                      3.1.1.5  新通知/信號(hào)機(jī)制-LockSupport

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

                  3.1.3  原子操作  
                            3.1.3.1  Atomic*類
                            3.1.3.2  操作實(shí)現(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ā)實(shí)現(xiàn) **
              4.1  線程(Thread)實(shí)現(xiàn)
              4.2  監(jiān)視器(Monitor)實(shí)現(xiàn)
              4.3  可見性實(shí)現(xiàn)
              4.4  原子性實(shí)現(xiàn)
              4.5  順序性實(shí)現(xiàn)
              4.6  其他


          說明:

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


             2. 由于知識(shí)體系比較繁雜,組織起來比較寬難,因此目錄結(jié)構(gòu)很有可能不斷地更新。該文章的Update部分或者標(biāo)題也會(huì)同步更新。


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

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


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

          謝謝 ,EOF!


          評(píng)論

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

          2012-04-19 16:09 by Freish
          同對(duì)java并發(fā)有興趣,歡迎加入java并發(fā)討論群:229609257

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 扶余县| 广丰县| 普宁市| 巨鹿县| 义乌市| 玛曲县| 阳新县| 上栗县| 共和县| 天等县| 沂南县| 于田县| 佳木斯市| 重庆市| 沧源| 静乐县| 克东县| 高邮市| 三门县| 宜春市| 安远县| 东港市| 宁津县| 阜新市| 彩票| 广元市| 庄河市| 黔南| 开封县| 高邮市| 正安县| 南乐县| 双鸭山市| 攀枝花市| 南充市| 台中县| 昌乐县| 衡南县| 梨树县| 通许县| 驻马店市|