• <em id="pai5d"></em><sup id="pai5d"></sup>
    
    

    <small id="pai5d"><rp id="pai5d"></rp></small>
    <option id="pai5d"></option>

    
    
  • <sup id="pai5d"></sup>
    <em id="pai5d"><label id="pai5d"></label></em>

  • <s id="pai5d"></s>
    當前位置 : 首頁(yè)  圖書(shū) 正文

    Java并發(fā)編程:核心方法與框架簡(jiǎn)介,目錄書(shū)摘

    2020-05-18 17:39 來(lái)源:京東 作者:京東
    java框架
    Java并發(fā)編程:核心方法與框架
    暫無(wú)報價(jià)
    1000+評論 98%好評
    編輯推薦:  

    資深Java專(zhuān)家10年經(jīng)驗總結,全程案例式講解,全面介紹Java并發(fā)包相關(guān)的技術(shù)。以淺白的措辭,結合大量實(shí)例模擬實(shí)際應用場(chǎng)景,全面解析Java并發(fā)包中的核心類(lèi)、API與并發(fā)框架的使用。

      

    Java并發(fā)編程無(wú)處不在,服務(wù)器、數據庫、應用,Java并發(fā)是永遠不可跳過(guò)的溝坎,優(yōu)秀的程序員一定要在Java并發(fā)領(lǐng)域進(jìn)行煉獄式的學(xué)習,吸收消化并最終轉化成軟件產(chǎn)品成果。另外,單純從Java程序員成長(cháng)計劃這方面進(jìn)行考慮,Java多線(xiàn)程/并發(fā)也依然是想深入學(xué)習Java必須要掌握的技術(shù),比如在軟件公司中接觸的“緩存”,“分布式一致性”,“高并發(fā)框架”,“海量數據處理”,“高效訂單處理”等都與Java多線(xiàn)程、Java并發(fā)緊密相關(guān)。進(jìn)行大數據、分布式、高并發(fā)類(lèi)的專(zhuān)題攻克時(shí),并發(fā)編程的學(xué)習必不可少,但并發(fā)編程學(xué)習曲線(xiàn)陡峭,多彎路和“坑”。本書(shū)基本完全覆蓋了Java并發(fā)包中核心類(lèi)、API與并發(fā)框架,大程度介紹了每個(gè)常用類(lèi)的使用,以案例的方式進(jìn)行講解,以使讀者快速學(xué)習,迅速掌握。
      
      本書(shū)有以下特點(diǎn)
      不留遺漏——全面覆蓋Java并發(fā)知識點(diǎn);
      直擊要害——實(shí)戰化案例,精準定位技術(shù)細節;
      學(xué)以致用——精要式演示,確保開(kāi)發(fā)/學(xué)習不脫節;
      潛移默化——研磨式知識講解,參透技術(shù)要點(diǎn);
      提升效率——垂直式技術(shù)精解,不繞彎路;
      循序提升——漸進(jìn)式知識點(diǎn)統排,確保連貫。

    內容簡(jiǎn)介:  

    技術(shù)暢銷(xiāo)書(shū)《Java多線(xiàn)程編程核心技術(shù)》作者撰寫(xiě),全程案例式講解,全面介紹Java并發(fā)包相關(guān)的技術(shù)。以淺白的措辭,結合大量實(shí)例模擬實(shí)際應用場(chǎng)景,全面解析Java并發(fā)包中的核心類(lèi)、API與并發(fā)框架的使用。
      全書(shū)共10章。第1章講解了線(xiàn)程間的同步性,以及線(xiàn)程間的傳輸數據控制,即Semaphore和Exchanger類(lèi)的使用。第2章介紹了在同步處理上更加靈活的工具類(lèi)CountDownLatch和CyclicBarrier,詳細到每個(gè)類(lèi)的API的具體使用與應用場(chǎng)景。第3章是第2章的升級,由于CountDownLatch和CyclicBarrier類(lèi)都有相應的弊端,所以在JDK 1.7中新增加了Phaser類(lèi)來(lái)解決這些缺點(diǎn),該類(lèi)是熟練掌握JDK并發(fā)包的必要知識點(diǎn)。第4章是讀者應重點(diǎn)掌握的Executor接口與ThreadPoolExecutor線(xiàn)程池,能有效地提高程序運行效率,更好地統籌線(xiàn)程執行的相關(guān)任務(wù)。第5章講解Future和Callable的使用,解決線(xiàn)程需要返回值的情況。第6章介紹Java并發(fā)包中的CompletionService的使用,因為可以以異步的方式獲得任務(wù)執行的結果,所以該接口可以增強程序運行效率。第7章介紹接口ExecutorService,該接口提供了若干工具方法來(lái)方便執行并發(fā)業(yè)務(wù)。第8章主要介紹ScheduledExecutorService的使用,以掌握如何將計劃任務(wù)與線(xiàn)程池結合使用。第9章主要介紹Fork-Join分治編程,以提升多核CPU的優(yōu)勢,加快程序運行效率。第10章主要介紹并發(fā)集合框架,利用好并發(fā)框架,事半功倍。

    作者簡(jiǎn)介:

    高洪巖
    某世界500強企業(yè)高級項目經(jīng)理,10余年項目管理與開(kāi)發(fā)經(jīng)驗,10年Java相關(guān)開(kāi)發(fā)經(jīng)驗,深諳Java技術(shù)開(kāi)發(fā)難點(diǎn)與要點(diǎn),擁有良好的技術(shù)素養和豐富的實(shí)踐經(jīng)驗。精通J2EE核心技術(shù)、基于EJB的分布式系統開(kāi)發(fā)、Android移動(dòng)開(kāi)發(fā)、智能報表、多線(xiàn)程及高并發(fā)等相關(guān)的技術(shù)內容,近期繼續關(guān)注并發(fā)相關(guān)的前沿技術(shù)。著(zhù)有技術(shù)暢銷(xiāo)書(shū)《Java多線(xiàn)程編程核心技術(shù)》,喜歡將技術(shù)與教育相結合的方式共享知識,得以共同提高。生活中喜歡攝影, 對輪滑,旅游,航模亦興趣濃厚。 

    目錄:

    前言
    第1章 Semaphore和Exchanger的使用  1
    1.1 Semaphore的使用  2
    1.1.1 類(lèi)Semaphore的同步性  2
    1.1.2 類(lèi)Semaphore構造方法permits參數作用  4
    1.1.3 方法acquire(int permits)參數作用及動(dòng)態(tài)添加permits許可數量  5
    1.1.4 方法acquireUninterruptibly()的使用  8
    1.1.5 方法availablePermits()和drainPermits()  10
    1.1.6 方法getQueueLength()和hasQueuedThreads()  12
    1.1.7 公平與非公平信號量的測試  13
    1.1.8 方法tryAcquire()的使用  15
    1.1.9 方法tryAcquire(int permits)的使用  17
    1.1.10 方法tryAcquire(long timeout, TimeUnit unit)的使用  17
    1.1.11 方法tryAcquire(int permits, long timeout, TimeUnit unit)的使用  19
    1.1.12 多進(jìn)路-多處理-多出路實(shí)驗  20
    1.1.13 多進(jìn)路-單處理-多出路實(shí)驗  21
    1.1.14 使用Semaphore創(chuàng )建字符串池  23
    1.1.15 使用Semaphore實(shí)現多生產(chǎn)者/多消費者模式  25
    1.2 Exchanger的使用  31
    1.2.1 方法exchange()阻塞的特性  31
    1.2.2 方法exchange()傳遞數據  32
    1.2.3 方法exchange(V x, long timeout, TimeUnit unit)與超時(shí)  34
    1.3 本章總結  35
    第2章 CountDownLatch和CyclicBarrier的使用  36
    2.1 CountDownLatch的使用  36
    2.1.1 初步使用  37
    2.1.2 裁判在等全部的運動(dòng)員到來(lái)  38
    2.1.3 各就各位準備比賽  39
    2.1.4 完整的比賽流程  41
    2.1.5 方法await(long timeout, TimeUnit unit)  44
    2.1.6 方法getCount()的使用  46
    2.2 CyclicBarrier的使用  46
    2.2.1 初步使用  48
    2.2.2 驗證屏障重置性及getNumberWaiting()方法的使用  51
    2.2.3 用CyclicBarrier類(lèi)實(shí)現階段跑步比賽  52
    2.2.4 方法isBroken()的使用  55
    2.2.5 方法await(long timeout, TimeUnit unit)超時(shí)出現異常的測試  57
    2.2.6 方法getNumberWaiting()和getParties()  60
    2.2.7 方法reset()  62
    2.3 本章總結  64
    第3章 Phaser的使用  65
    3.1 Phaser的使用  66
    3.2 類(lèi)Phaser的arriveAndAwaitAdvance()方法測試1  66
    3.3 類(lèi)Phaser的arriveAndAwaitAdvance()方法測試2  68
    3.4 類(lèi)Phaser的arriveAndDeregister()方法測試  69
    3.5 類(lèi)Phaser的getPhase()和onAdvance()方法測試  70
    3.6 類(lèi)Phaser的getRegisteredParties()方法和register()測試  74
    3.7 類(lèi)Phaser的bulkRegister()方法測試  75
    3.8 類(lèi)Phaser的getArrivedParties()和getUnarrivedParties()方法測試  75
    3.9 類(lèi)Phaser的arrive()方法測試1  77
    3.10 類(lèi)Phaser的arrive ()方法測試2  78
    3.11 類(lèi)Phaser的awaitAdvance(int phase)方法測試  81
    3.12 類(lèi)Phaser的awaitAdvanceInterruptibly(int)方法測試1  83
    3.13 類(lèi)Phaser的awaitAdvanceInterruptibly(int)方法測試2  84
    3.14 類(lèi)Phaser的awaitAdvanceInterruptibly(int)方法測試3  86
    3.15 類(lèi)Phaser的awaitAdvanceInterruptibly(int,long,TimeUnit)方法測試4  87
    3.16 類(lèi)Phaser的forceTermination()和isTerminated()方法測試  89
    3.17 控制Phaser類(lèi)的運行時(shí)機  92
    3.18 本章總結  93
    第4章 Executor與ThreadPoolExecutor的使用  94
    4.1 Executor接口介紹  94
    4.2 使用Executors工廠(chǎng)類(lèi)創(chuàng )建線(xiàn)程池  97
    4.2.1 使用newCachedThreadPool()方法創(chuàng )建無(wú)界線(xiàn)程池  98
    4.2.2 驗證newCachedThreadPool()創(chuàng )建為T(mén)hread池  100
    4.2.3 使用newCachedThreadPool (ThreadFactory)定制線(xiàn)程工廠(chǎng)  102
    4.2.4 使用newFixedThreadPool(int)方法創(chuàng )建有界線(xiàn)程池  103
    4.2.5 使用newFixedThreadPool(int, ThreadFactory)定制線(xiàn)程工廠(chǎng)  105
    4.2.6 使用newSingleThreadExecutor()方法創(chuàng )建單一線(xiàn)程池  106
    4.2.7 使用newSingleThreadExecutor(ThreadFactory)定制線(xiàn)程工廠(chǎng)  107
    4.3 ThreadPoolExecutor的使用  107
    4.3.1 構造方法的測試  107
    4.3.2 方法shutdown()和shutdownNow()與返回值  119
    4.3.3 方法isShutdown()  129
    4.3.4 方法isTerminating ()和isTerminated ()  129
    4.3.5 方法awaitTermination(long timeout,TimeUnit unit)  131
    4.3.6 工廠(chǎng)ThreadFactory+execute()+UncaughtExceptionHandler處理異常  134
    4.3.7 方法set/getRejectedExecutionHandler()  138
    4.3.8 方法allowsCoreThreadTimeOut()/(boolean)  140
    4.3.9 方法prestartCoreThread()和prestartAllCoreThreads()  142
    4.3.10 方法getCompletedTaskCount()  144
    4.3.11 常見(jiàn)3種隊列結合max值的因果效果  145
    4.3.12 線(xiàn)程池ThreadPoolExecutor的拒絕策略  151
    4.3.13 方法afterExecute()和beforeExecute()  157
    4.3.14 方法remove(Runnable)的使用  159
    4.3.15 多個(gè)get方法的測試  162
    4.3.16 線(xiàn)程池ThreadPoolExecutor與Runnable執行為亂序特性  166
    4.4 本章總結  167
    第5章 Future和Callable的使用  168
    5.1 Future和Callable的介紹  168
    5.2 方法get()結合ExecutorService中的submit(Callable)的使用  168
    5.3 方法get()結合ExecutorService中的submit(Runnable)和isDone()的使用  170
    5.4 使用ExecutorService接口中的方法submit(Runnable, T result)  170
    5.5 方法cancel(boolean mayInterruptIfRunning)和isCancelled()的使用  173
    5.6 方法get(long timeout, TimeUnit unit)的使用  178
    5.7 異常的處理  179
    5.8 自定義拒絕策略RejectedExecutionHandler接口的使用  181
    5.9 方法execute()與submit()的區別  182
    5.10 驗證Future的缺點(diǎn)  186
    5.11 本章總結  188
    第6章 CompletionService的使用  189
    6.1 CompletionService介紹  189
    6.2 使用CompletionService解決Future的缺點(diǎn)  190
    6.3 使用take()方法  193
    6.4 使用poll()方法  194
    6.5 使用poll(long timeout, TimeUnit unit)方法  195
    6.6 類(lèi)CompletionService與異常  199
    6.7 方法Future submit(Runnable task, V result)的測試  205
    6.8 本章總結  207
    第7章 接口ExecutorService的方法使用  208
    7.1 在ThreadPoolExecutor中使用ExecutorService中的方法  208
    7.2 方法invokeAny(Collection tasks)的使用與interrupt  209
    7.3 方法invokeAny()與執行慢的任務(wù)異常  212
    7.4 方法invokeAny()與執行快的任務(wù)異常  216
    7.5 方法invokeAny()與全部異常  220
    7.6 方法invokeAny(CollectionTasks, timeout, timeUnit)超時(shí)的測試  222
    7.7 方法invokeAll(Collection tasks)全正確  226
    7.8 方法invokeAll(Collection tasks)快的正確慢的異常  227
    7.9 方法invokeAll(Collection tasks)快的異常慢的正確  230
    7.10 方法invokeAll(Collection tasks,long timeout,TimeUnit unit)先慢后快  232
    7.11 方法invokeAll(Collection tasks,long timeout,TimeUnit unit)先快后慢  234
    7.12 方法invokeAll(Collection tasks,long timeout,TimeUnit unit)全慢  236
    7.13 本章總結  238
    第8章 計劃任務(wù)ScheduledExecutorService的使用  239
    8.1 ScheduledExecutorService的使用  240
    8.2 ScheduledThreadPoolExecutor使用Callable延遲運行  241
    8.3 ScheduledThreadPoolExecutor使用Runnable延遲運行  244
    8.4 延遲運行并取得返回值  245
    8.5 使用scheduleAtFixedRate()方法實(shí)現周期性執行  246
    8.6 使用scheduleWithFixedDelay()方法實(shí)現周期性執行  248
    8.7 使用getQueue()與remove()方法  250
    8.8 方法setExecuteExistingDelayedTasksAfterShutdownPolicy()的使用  253
    8.9 方法setContinueExistingPeriodicTasksAfterShutdownPolicy()  255
    8.10 使用cancel(boolean)與setRemoveOnCancelPolicy()方法  257
    8.11 本章總結  261
    第9章 Fork-Join分治編程  262
    9.1 Fork-Join分治編程與類(lèi)結構  262
    9.2 使用RecursiveAction讓任務(wù)跑起來(lái)  264
    9.3 使用RecursiveAction分解任務(wù)  265
    9.4 使用RecursiveTask取得返回值與join()和get()方法的區別  266
    9.5 使用RecursiveTask執行多個(gè)任務(wù)并打印返回值  270
    9.6 使用RecursiveTask實(shí)現字符串累加  272
    9.7 使用Fork-Join實(shí)現求和:實(shí)驗1  273
    9.8 使用Fork-Join實(shí)現求和:實(shí)驗2  275
    9.9 類(lèi)ForkJoinPool核心方法的實(shí)驗  276
    9.9.1 方法public void execute(ForkJoinTask task)的使用  276
    9.9.2 方法public void execute(Runnable task)的使用  278
    9.9.3 方法public void execute(ForkJoinTask task)如何處理返回值  278
    9.9.4 方法public  ForkJoinTask submit(ForkJoinTask task)的使用  279
    9.9.5 方法public ForkJoinTask submit(Runnable task)的使用  280
    9.9.6 方法public  ForkJoinTask submit(Callable task)的使用  281
    9.9.7 方法public  ForkJoinTask submit(Runnable task, T result)的使用  282
    9.9.8 方法public  List> invokeAll(Collection> tasks)的使用  285
    9.9.9 方法public void shutdown()的使用  286
    9.9.10 方法public List shutdownNow()的使用  289
    9.9.11 方法isTerminating()和isTerminated()的使用  292
    9.9.12 方法public boolean isShutdown()的使用  295
    9.9.13 方法public boolean awaitTermination(long timeout, TimeUnit unit)的使用  297
    9.9.14 方法public  T invoke(ForkJoinTask task)的使用  299
    9.9.15 監視pool池的狀態(tài)  301
    9.10 類(lèi)ForkJoinTask對異常的處理  308
    9.11 本章總結  309
    第10章 并發(fā)集合框架  310
    10.1 集合框架結構簡(jiǎn)要  310
    10.1.1 接口Iterable  310
    10.1.2 接口Collection  311
    10.1.3 接口List  311
    10.1.4 接口Set  312
    10.1.5 接口Queue  312
    10.1.6 接口Deque  312
    10.2 非阻塞隊列  313
    10.2.1 類(lèi)ConcurrentHashMap的使用  313
    10.2.2 類(lèi)ConcurrentSkipListMap的使用  322
    10.2.3 類(lèi)ConcurrentSkipListSet的使用  325
    10.2.4 類(lèi)ConcurrentLinkedQueue的使用  328
    10.2.5 類(lèi)ConcurrentLinkedDeque的使用  330
    10.2.6 類(lèi)CopyOnWriteArrayList的使用  332
    10.2.7 類(lèi)CopyOnWriteArraySet的使用  335
    10.3 阻塞隊列  337
    10.3.1 類(lèi)ArrayBlockingQueue的使用  337
    10.3.2 類(lèi)PriorityBlockingQueue的使用  338
    10.3.3 類(lèi)LinkedBlockingQueue的使用  340
    10.3.4 類(lèi)LinkedBlockingDeque的使用  341
    10.3.5 類(lèi)SynchronousQueue的使用  341
    10.3.6 類(lèi)DelayQueue的使用  344
    10.3.7 類(lèi)LinkedTransferQueue的使用  345
    10.4 本章總結  354

    熱門(mén)推薦文章
    相關(guān)優(yōu)評榜
    品類(lèi)齊全,輕松購物 多倉直發(fā),極速配送 正品行貨,精致服務(wù) 天天低價(jià),暢選無(wú)憂(yōu)
    購物指南
    購物流程
    會(huì )員介紹
    生活旅行/團購
    常見(jiàn)問(wèn)題
    大家電
    聯(lián)系客服
    配送方式
    上門(mén)自提
    211限時(shí)達
    配送服務(wù)查詢(xún)
    配送費收取標準
    海外配送
    支付方式
    貨到付款
    在線(xiàn)支付
    分期付款
    郵局匯款
    公司轉賬
    售后服務(wù)
    售后政策
    價(jià)格保護
    退款說(shuō)明
    返修/退換貨
    取消訂單
    特色服務(wù)
    奪寶島
    DIY裝機
    延保服務(wù)
    京東E卡
    京東通信
    京東JD+
    亚洲精品乱码久久久97_国产伦子一区二区三区_久久99精品久久久欧美_天天看片永久av影城网页
  • <em id="pai5d"></em><sup id="pai5d"></sup>
    
    

    <small id="pai5d"><rp id="pai5d"></rp></small>
    <option id="pai5d"></option>

    
    
  • <sup id="pai5d"></sup>
    <em id="pai5d"><label id="pai5d"></label></em>

  • <s id="pai5d"></s>