《Java并發(fā)編程 核心方法與框架》讀書筆記思維導(dǎo)圖_第1頁
《Java并發(fā)編程 核心方法與框架》讀書筆記思維導(dǎo)圖_第2頁
《Java并發(fā)編程 核心方法與框架》讀書筆記思維導(dǎo)圖_第3頁
《Java并發(fā)編程 核心方法與框架》讀書筆記思維導(dǎo)圖_第4頁
《Java并發(fā)編程 核心方法與框架》讀書筆記思維導(dǎo)圖_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

PPT書籍導(dǎo)讀最新版本讀書筆記模板《Java并發(fā)編程核心方法與框架》最新版讀書筆記,下載可以直接修改方法使用讀者程池類線程接口線創(chuàng)建運行工廠實現(xiàn)問題作用任務(wù)框架返回值字符實驗本書關(guān)鍵字分析思維導(dǎo)圖01Semaphore和Exchanger的...Phaser的使用Future和Callable的使用CountDownLatch和Cycli...Executor與ThreadPoolE...CompletionService的使用目錄030502040607接口ExecutorService的方法...Fork-Join分治編程計劃任務(wù)ScheduledExecuto...并發(fā)集合框架目錄0908010內(nèi)容摘要本書盡量減少“啰嗦”式的文字語言,全部用Demo式案例來講解技術(shù)點的實現(xiàn),使讀者看到代碼及運行結(jié)果后就可以知道此項目要解決的是什么問題。類似于網(wǎng)絡(luò)中Blog的風(fēng)格,可讓讀者用最短的時間學(xué)會此知識點,明白此知識點如何應(yīng)用,以及在使用時要避免什么。這就像“瑞士軍刀”,雖短小,卻鋒利。本書的目的就是幫讀者快速學(xué)習(xí)并解決問題。Semaphore和Exchanger的...類Semaphore所提供的功能完全就是synchronized關(guān)鍵字的升級版,但它提供的功能更加的強大與方便,主要的作用就是控制線程并發(fā)的數(shù)量無參方法tryAcquire()的作用是嘗試地獲得1個許可,如果獲取不到則返回false,此方法通常與if語句結(jié)合使用,其具有無阻塞的特點。1.1Semaphore的使用1.3本章總結(jié)1.2Exchanger的使用Semaphore和Exchanger的...1.1.1類Semaphore的同步性1.1.2類Semaphore構(gòu)造方法...1.1.3方法acquire(int...1.1.4方法acquireUnint...1.1.5方法availablePer...1.1.6方法getQueueLeng...0103020405061.1Semaphore的使用1.1.7公平與非公平信號量的測試1.1.8方法tryAcquire()...1.1.9方法tryAcquire(i...1.1.10方法tryAcquire(...1.1.11方法tryAcquire(...1.1.12多進路-多處理-多出路實驗0103020405061.1Semaphore的使用1.1.13多進路-單處理-多出路實驗1.1.15使用Semaphore實現(xiàn)...1.1.14使用Semaphore創(chuàng)建...1.1Semaphore的使用1.2.1方法exchange()阻塞...1.2.3方法exchange(Vx...1.2.2方法exchange()傳遞...1.2Exchanger的使用CountDownLatch和Cycli...無阻塞的特點可以使線程不至于在同步處一直持續(xù)等待的狀態(tài),如果if語句判斷不成立則線程會繼續(xù)走else語句,程序會繼續(xù)向下運行。2.1CountDownLatch的使...2.3本章總結(jié)2.2CyclicBarrier的使用CountDownLatch和Cycli...2.1.1初步使用2.1.2裁判在等全部的運動員到來2.1.3各就各位準備比賽2.1.4完整的比賽流程2.1.5方法await(longt...2.1.6方法getCount()的使...0103020405062.1CountDownLatch的使...2.2.1初步使用2.2.2驗證屏障重置性及getNum...2.2.3用CyclicBarrier...2.2.4方法isBroken()的使...2.2CyclicBarrier的使用2.2.5方法await(longt...2.2.7方法reset()2.2.6方法getNumberWai...2.2CyclicBarrier的使用Phaser的使用方法acquireUninterruptibly()的作用是使等待進入acquire()方法的線程,不允許被中斷。3.1Phaser的使用3.2類Phaser的arriveAn...3.3類Phaser的arriveAn...3.4類Phaser的arriveAn...3.5類Phaser的getPhase...3.6類Phaser的getRegis...010302040506Phaser的使用3.7類Phaser的bulkRegi...3.8類Phaser的getArriv...3.9類Phaser的arrive()...3.10類Phaser的arrive...3.11類Phaser的awaitAd...3.12類Phaser的awaitAd...010302040506Phaser的使用3.13類Phaser的awaitAd...3.14類Phaser的awaitAd...3.15類Phaser的awaitAd...3.16類Phaser的forceTe...3.17控制Phaser類的運行時機3.18本章總結(jié)010302040506Phaser的使用Executor與ThreadPoolE...另外需要說明一下,對Semaphore類的構(gòu)造方法傳遞的參數(shù)permits值如果大于1時,該類并不能保證線程安全性,因為還是有可能會出現(xiàn)多個線程共同訪問實例變量,導(dǎo)致出現(xiàn)臟數(shù)據(jù)的情況。4.1Executor接口介紹4.2使用Executors工廠類創(chuàng)建...4.3ThreadPoolExecut...4.4本章總結(jié)Executor與ThreadPoolE...4.2.1使用newCachedThr...4.2.2驗證newCachedThr...4.2.3使用newCachedThr...4.2.4使用newFixedThre...4.2使用Executors工廠類創(chuàng)建...4.2.5使用newFixedThre...4.2.7使用newSingleThr...4.2.6使用newSingleThr...4.2使用Executors工廠類創(chuàng)建...4.3.1構(gòu)造方法的測試4.3.2方法shutdown()和s...4.3.3方法isShutdown()4.3.4方法isTerminatin...4.3.5方法awaitTermina...4.3.6工廠ThreadFactor...0103020405064.3ThreadPoolExecut...4.3.7方法set/getRejec...4.3.8方法allowsCoreTh...4.3.9方法prestartCore...4.3.10方法getComplete...4.3.11常見3種隊列結(jié)合max值的...4.3.12線程池ThreadPool...0103020405064.3ThreadPoolExecut...4.3.13方法afterExecut...4.3.14方法remove(Runn...4.3.15多個get方法的測試4.3.16線程池ThreadPool...4.3ThreadPoolExecut...Future和Callable的使用類Semaphore的構(gòu)造函數(shù)參數(shù)permits是許可的意思,代表同一時間內(nèi),最多允許多少個線程同時執(zhí)行acquire()和release()之間的代碼。5.1Future和Callable的...5.2方法get()結(jié)合Executo...5.3方法get()結(jié)合Executo...5.4使用ExecutorServic...5.5方法cancel(boolean...5.6方法get(longtimeo...010302040506Future和Callable的使用5.7異常的處理5.8自定義拒絕策略RejectedE...5.9方法execute()與subm...5.10驗證Future的缺點5.11本章總結(jié)12345Future和Callable的使用CompletionService的使用有些時候,獲得許可的順序與線程啟動的順序有關(guān),這時信號量就要分為公平與非公平的。6.1CompletionServic...6.2使用CompletionServ...6.3使用take()方法6.4使用poll()方法CompletionService的使用6.5使用poll(longtime...6.6類CompletionServi...6.7方法Future<V>subm...6.8本章總結(jié)CompletionService的使用接口ExecutorService的方法...所謂的公平信號量是獲得鎖的順序與線程啟動的順序有關(guān),但不代表100%地獲得信號量,僅僅是在概率上能得到保證。7.1在ThreadPoolExecu...7.2方法invokeAny(Coll...7.3方法invokeAny()與執(zhí)行...7.4方法invokeAny()與執(zhí)行...7.5方法invokeAny()與全部...7.6方法invokeAny(Coll...010302040506接口ExecutorService的方法...7.7方法invokeAll(Coll...7.8方法invokeAll(Coll...7.9方法invokeAll(Coll...7.10方法invokeAll(Col...接口ExecutorService的方法...7.11方法invokeAll(Col...7.13本章總結(jié)7.12方法invokeAll(Col...接口ExecutorService的方法...計劃任務(wù)ScheduledExecuto...而非公平信號量就是無關(guān)的了。8.1ScheduledExecuto...8.2ScheduledThreadP...8.3ScheduledThreadP...8.4延遲運行并取得返回值8.5使用scheduleAtFixe...8.6使用scheduleWithFi...010302040506計劃任務(wù)ScheduledExecuto...8.7使用getQueue()與rem...8.8方法setExecuteExis...8.9方法setContinueExi...8.10使用cancel(boolea...8.11本章總結(jié)12345計劃任務(wù)ScheduledExecuto...Fork-Join分治編程在生活中也存在這種場景,比如一個生產(chǎn)鍵盤的生產(chǎn)商,發(fā)布了10個代理銷售許可,所以最多只有10個代理商來獲得其中的一個許可,這樣就限制了代理商的數(shù)量,同理也限制了線程并發(fā)數(shù)的數(shù)量,此類的主要作用就是限制線程并發(fā)的數(shù)量,如果不限制線程并發(fā)的數(shù)量,則CPU的資源很快就被耗盡,每個線程執(zhí)行的任務(wù)是相當(dāng)緩慢,因為CPU要把時間片分配給不同的線程對象,而且上下文切換也要耗時,最終造成系統(tǒng)運行效率大幅降低,所以限制并發(fā)線程的數(shù)量還是非常有必要的。9.1Fork-Join分治編程與類結(jié)...9.2使用RecursiveActio...9.3使用RecursiveActio...9.4使用RecursiveTask取...9.5使用RecursiveTask執(zhí)...9.6使用RecursiveTask實...010302040506Fork-Join分治編程9.7使用Fork-Join實現(xiàn)求和:...9.8使用Fork-Join實現(xiàn)求和:...9.9類ForkJoinPool核心方...9.10類ForkJoinTask對異...9.11本章總結(jié)12345Fork-Join分治編程9.9.1方法publicvoid...9.9.2方法publicvoid...9.9.3方法publicvoid...9.9.4方法public<T>F...9.9.5方法publicForkJ...9.9.6方法public<T>F...0103020405069.9類ForkJoinPool核心方...9.9.7方法public<T>F...9.9.8方法public<T>L...9.9.9方法publicvoid...9.9.10方法publicList...9.9.11方法isTerminati...9.9.12方法publicbool...0103020405069.9類ForkJoinPool核心方...9.9.13方法publicbool...9.9.15監(jiān)視pool池的狀態(tài)9.9.14方法public<T>...9.9類ForkJoinPool核心方...并發(fā)集合框架類Exchanger的主要作用可以使2個線程之間互相方便地

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論