登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 聯絡我們  | 運費計算  | 幫助中心 |  加入書簽
會員登入 新註冊 | 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類閱讀雜誌 香港/國際用戶
最新/最熱/最齊全的簡體書網 品種:超過100萬種書,正品正价,放心網購,悭钱省心 送貨:速遞 / EMS,時效:出貨後2-3日

2024年03月出版新書

2024年02月出版新書

2024年01月出版新書

2023年12月出版新書

2023年11月出版新書

2023年10月出版新書

2023年09月出版新書

2023年08月出版新書

2023年07月出版新書

2023年06月出版新書

2023年05月出版新書

2023年04月出版新書

2023年03月出版新書

2023年02月出版新書

『簡體書』并发编程理论与实践

書城自編碼: 3382320
分類: 簡體書→大陸圖書→教材研究生/本科/专科教材
作 者: 张杨
國際書號(ISBN): 9787302516781
出版社: 清华大学出版社
出版日期: 2019-06-01


書度/開本: 16开 釘裝: 平装

售價:NT$ 309

我要買

share:

** 我創建的書架 **
未登入.



新書推薦:
氢经济
《 氢经济 》

售價:NT$ 549.0
校园欺凌
《 校园欺凌 》

售價:NT$ 279.0
培训需求分析与年度计划制订——基于组织战略,做”对的”培训!
《 培训需求分析与年度计划制订——基于组织战略,做”对的”培训! 》

售價:NT$ 386.0
这就是心理咨询:全球心理咨询师都在用的45项技术(第3版)
《 这就是心理咨询:全球心理咨询师都在用的45项技术(第3版) 》

售價:NT$ 717.0
正说清朝十二帝(修订珍藏版)
《 正说清朝十二帝(修订珍藏版) 》

售價:NT$ 493.0
黑海史:从历史涟漪到时代巨浪
《 黑海史:从历史涟漪到时代巨浪 》

售價:NT$ 538.0
我,毕加索
《 我,毕加索 》

售價:NT$ 280.0
投资真相
《 投资真相 》

售價:NT$ 381.0

建議一齊購買:

+

NT$ 197
《 城市轨道交通车站消防与给排水系统维护 》
+

NT$ 332
《 城市轨道交通车站消防与给排水系统运行与维护(智媒体版) 》
+

NT$ 363
《 视听语言 》
+

NT$ 592
《 生物化学与分子生物学(第9版/本科临床/配增值) 》
+

NT$ 428
《 传播学教程(第二版)(21世纪新闻传播学系列教材;“十一五”国家级规划教材) 》
編輯推薦:
本书详细讲解并发编程的基本概念、原理、方法和技术。用大量实例帮助读者掌握*的技术发展趋势,理解并发编程的相关理论知识。
內容簡介:
本书在Java编程语言的基础上,对并发编程的相关概念、基本原理、方法和技术进行了详细讲解,内容涉及线程同步和障栅、线程间通信、执行器、ForkJoin框架和并行流处理等内容。本书在讲解并发编程基本知识的同时,大量使用实例进行演示,力求做到内容透彻。本书内容先进翔实、知识结构合理、例题丰富、深入浅出,既适合作为普通高校和工程类院校学生学习高性能程序设计的教材,又适合作为IT领域人员学习Java并发编程技术的工具书,同时也可以作为那些需要掌握高性能计算技术的人员的自学参考用书。
目錄
目录
第1章绪论1
1.1概述1
1.2概念和术语2
1.2.1并发与并行2
1.2.2串行执行和顺序执行4
1.2.3超线程4
1.2.4加速比5
1.3Java并发方面的特性5
1.4并发并行程序设计的方法6
1.4.1分治方法6
1.4.2流水线7
1.4.3消息传递8
1.5并发程序的评判标准8
1.6Java内存模型9
1.7程序的运行说明10第2章线程13
2.1进程与线程13
2.2线程的创建14
2.2.1继承Thread类14
2.2.2实现Runnable接口16
2.2.3两种方法的比较18
2.2.4相关说明18
2.3线程的属性18
2.3.1线程标识符18
2.3.2线程名20
2.3.3线程状态23
2.3.4线程的优先级和调度27
2.3.5守护线程30
2.4线程管理33
2.4.1join方法33
2.4.2sleep方法37
2.4.3yield方法38
2.4.4interrupt方法38
2.4.5其他方法40
2.5线程分组40
2.6线程数目的确定43
2.7线程本地化44
2.8带返回值的线程47
2.8.1Callable接口47
2.8.2Future接口47
2.8.3Callable与Runnable的比较50
2.9案例分析51
小结61
习题61第3章线程同步控制62
3.1为什么要使用同步控制62
3.2基本概念64
3.2.1数据竞争64
3.2.2临界区65
3.2.3监视器65
3.2.4阻塞和非阻塞66
3.2.5线程安全与线程不安全66
3.3锁67
3.3.1同步锁67
3.3.2可重入锁70
3.3.3读写锁77
3.3.4邮戳锁83
3.3.5几种锁机制的比较89
3.3.6锁的不足之处90
3.3.7减少锁竞争的方法90
3.3.8死锁和活锁91
3.4volatile变量96
3.5原子操作96
3.5.1基本类型的原子类97
3.5.2一般引用类型的原子类100
3.5.3ABA问题102
3.5.4扩展的原子引用类型105
3.5.5原子操作数组类111
小结116
习题117第4章线程间通信118
4.1等待集合118
4.2waitnotifynotifyAll方法118
4.2.1wait方法118
4.2.2notify方法119
4.2.3notifyAll方法119
4.2.4实例120
4.3条件变量126
4.3.1await方法127
4.3.2signal方法128
4.3.3signalAll方法128
4.3.4实例128
习题131第5章线程同步障栅132
5.1障栅132
5.2倒计时门闩137
5.3信号量140
5.4同步队列145
5.5交换器148
5.6阶段化处理152
习题160第6章线程执行器161
6.1线程池161
6.1.1Executor接口161
6.1.2ExecutorService接口162
6.1.3ThreadPoolExecutor类162
6.1.4工厂类Executors163
6.1.5使用线程执行器处理没有返回值的线程164
6.2固定数目的线程执行器166
6.3使用线程执行器处理有返回值的线程168
6.4延迟执行、周期性执行的执行器171
6.4.1ScheduledExecutorService接口171
6.4.2ScheduledFuture接口172
6.4.3举例173
6.5取消任务的执行176
6.6任务装载和结果处理的分离177
6.7管理被拒绝的任务179第7章ForkJoin框架183
7.1概述183
7.2相关知识184
7.2.1负载均衡184
7.2.2分治方法184
7.2.3工作窃取算法185
7.3ForkJoin框架的编程模式185
7.4ForkJoinPool类186
7.4.1ForkJoinPool的创建186
7.4.2ForkJoinPool的使用187
7.5ForkJoin框架中的任务188
7.5.1任务的创建188
7.5.2任务的运行方式196
7.5.3任务的取消199
7.6ForkJoin框架的限制202
7.7几种线程机制的比较202
习题202第8章流处理203
8.1Lambda表达式203
8.1.1Lambda表达式的定义203
8.1.2Lambda表达式的使用204
8.2函数式接口Predicate205
8.3流206
8.3.1流简介206
8.3.2创建流207
8.3.3流的操作208第9章自定义并发类211
9.1自定义线程工厂211
9.2自定义线程池213
9.3在执行器中使用自定义的线程工厂215
9.4自定义周期性任务216
9.5自定义与ForkJoin框架相关的并发类221
9.5.1ForkJoinWorkerThread类221
9.5.2ForkJoinPool.ForkJoinWorkerThreadFactory接口221
9.5.3自定义ForkJoin框架中的线程222
9.5.4自定义任务224
9.6自定义同步类227
9.6.1自定义锁227
9.6.2自定义原子操作231
习题233第10章线程安全的集合234
10.1线程安全的双端队列234
10.2线程安全的哈希表238
10.3线程安全的跳表240
10.4随机数产生242
10.5并行数组244第11章多线程程序的性能和测试246
11.1性能246
11.2可伸缩性248
11.3多线程程序的测试248第12章面向切面技术在并发编程中的应用249
12.1相关知识249
12.1.1面向切面编程249
12.1.2Java注释接口251
12.2类方法的并发执行254
12.2.1问题的提出254
12.2.2并行库255
12.2.3基于面向方面技术的并行库易用性优化260
12.2.4实验262
12.2.5小结266
12.3实现被标记的类方法的并发执行267
12.4使用面向切面技术分离并发关注点269
12.4.1问题演示269
12.4.2重构框架271
12.4.3实验评估 274
习题277
內容試閱
前言
20世纪中晚期,并行编程还只局限在拥有高性能工作站和服务器的实验室和工业界中,然而随着多核众核处理器架构的普及和不断发展,越来越多的普通用户开始使用并发并行程序设计技术。目前,学术界和工业界普遍认为,并发并行程序设计将成为未来软件开发技术的主流。并发并行程序设计继承了传统程序设计中的理论和方法,但又对程序设计技术提出了许多新的要求,突出表现在并行思维能力、并行算法设计、并行数据分解和任务分解等方面,很多程序设计人员对于传统的串行程序设计较为熟悉,对并发并行程序设计的相关方法还有待深入学习。
为了让更多的人了解和掌握并发编程的理论、方法和技术,作者撰写了这部书籍。它是作者在长期科研、教学和实践的基础上编写而成的。虽然本书介绍的并发编程知识只是Java编程生态环境系统中之冰山一角,但也覆盖了JDK并发库中绝大多数的工具类和接口的使用方法。需要特别说明的是,JDK并发库只是提供了一个并发编程工具库,而并行编程过程中最重要的是并行编程思维习惯的培养。作者希望本书在介绍并发编程相关知识的同时,可以培养读者并发编程的思想和思维习惯,引领读者进入并行程序设计的世界,为高性能程序设计起到抛砖引玉的作用。
支持多线程是Java语言的重要特征之一。在学习本书之前,读者应该具备Java编程的基本知识。本书对Java多线程编程的相关知识进行了介绍,具体内容涉及线程定义、线程同步、线程障栅、线程间通信、执行器、ForkJoin框架和并行流处理等内容,大部分内容在讲解知识的同时都通过例题加以演示,所有例题都由编者亲自编写和测试,实例的演示采用提出问题分析问题代码演示执行结果分析结果相关讨论的思路,力求做到明白透彻。
本书内容先进、知识结构合理、讲解详尽、例题丰富、深入浅出,是初学者学习并发并行程序设计的理想教材,适合普通高校、实践和工程类院校学生在学习高性能程序设计时选用,是高等院校学生和IT领域在职人员学习Java并发编程技术的理想教材和工具书,也可以作为那些需要高性能计算技术人员的自学参考用书。本书内容不仅对JDK 1.7及之前版本中的并发内容进行讲解,而且对JDK 1.8版本中发布的很多新的并发类和接口进行了介绍,希望可以为读者解惑。
全书共12章,全部由作者一人完成,其中,第1章简要介绍并发编程的相关知识;从第2章开始,详细介绍Java线程编程;第3~5章讲解Java线程编程中的线程同步、障栅和线程间通信的相关知识;第6、7章介绍了线程执行器和ForkJoin框架;第8章对并行流处理进行了介绍;第9章介绍如何自定义并发类;第10章介绍如何使用线程安全的集合操作;第11、12章对多线程程序的性能以及面向切面编程在并行程序设计中的应用进行了介绍。
在本书的写作过程中,得到了河北省重点学科计算机软件与理论的支持,得到了国家自然科学基金项目号:61440012、河北省自然科学基金项目号:F2016208007、河北省基础研究计划重点基础专项项目号:18960106D和河北省高等学校青年拔尖人才计划项目号:BJ2014023的资助。作者在美国普渡大学西拉法叶分校访学期间,得到了张翔宇教授的悉心指导和关怀,以及对本书提出的诸多有益的建议。此外,在本书的编写过程中得到了河北科技大学信息科学与工程学院张冬雯院长和相关领导的鼎力支持,计算机系的张晓明和刘伟等对本书的编写工作提出很多好的意见和建议,国内外众多的Java经典教材、研究成果和相关网站也为本书提供了参考,在此一并表示衷心的感谢。
由于编者学识和水平有限,书中不妥之处在所难免,恳请广大读者批评指正。
作者2018年5月

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 海外用户
megBook.com.tw
Copyright (C) 2013 - 2024 (香港)大書城有限公司 All Rights Reserved.