成功加入购物车

去购物车结算 X
浩子书屋
  • 深入理解java高并发编程 编程语言 黄俊 新华正版
  • 深入理解java高并发编程 编程语言 黄俊 新华正版
  • 深入理解java高并发编程 编程语言 黄俊 新华正版
  • 深入理解java高并发编程 编程语言 黄俊 新华正版

深入理解java高并发编程 编程语言 黄俊 新华正版

举报

修炼高并发内功,面试求职常备。计算机、系统、软件多层次讲透cpu并发、内核并发、java并发、线程池、jvm。《java从入门到精通》篇,马士兵教育倾心打造。

  • 装帧:    平装
  • 开本:    16开
  • 页数:    636页
  • 字数:    1114千字
  • 出版时间: 
  • 版次:  1
  • 装帧:  平装
  • 开本:  16开
  • 页数:  636页
  • 字数:  1114千字

售价 102.04 6.9折

定价 ¥148.00 

品相 全新品相描述

优惠 满包邮

优惠 满减券
    运费
    本店暂时无法向该地区发货

    延迟发货说明

    时间:
    说明:

    上书时间2023-12-27

    数量
    库存5
    微信扫描下方二维码
    微信扫描打开成功后,点击右上角”...“进行转发

    卖家超过10天未登录

    • 商品详情
    • 店铺评价
    手机购买
    微信扫码访问
    • 商品分类:
      计算机与互联网
      货号:
      xhwx_1202532557
      品相描述:全新
      正版特价新书
      商品描述:
      主编:

      "java多线程并发编程是java领域较难理解和较难掌握的知识,同时也是it业务领域较为重要的知识之一;在编程开发中应用广泛,同时也是java编程中难度较高、对源码分析要求较高的部分。深入理解java高并发编程内容分为上下两篇,共10章。上篇讲解基础知识,涉及从计算机硬件到软件的一系列内容;下篇深入研究java虚拟机,讨论并发编程知识。本书并没有介绍java语言层面的一些基础知识,所以阅读本书需要读者理解掌握javase的内容。对此,读者可以选择java从入门到精通进行学。笔者专注于研究java语言,对linux内核、jvm有着精深的研究,曾在多家大型互联网公司任职,具有丰富的实战经验。并且多年担任java工作,讲解知识清晰明了、深入浅出。笔者在“文泉云盘”中为广大读者朋友准备了微课,供大家参学。另外,读者可扫描前言中的“技术支持”二维码,观看作者分享的讲解,和作者进行沟通,共同学,一起成长。"

      目录:

      篇 基础知识储备

      章 计算机 2

      1.1 汇编语言基础 2

      1.1.1 汇编语言与机器语言 2

      1.1.2 常见的寄存器 3

      1.1.3 常见作语句 6

      1.1.4 内联汇编 6

      1.1.5 常见助记符 9

      1.2 c语言基础 12

      1.2.1 基本数据类型 12

      1.2.2 结构体 13

      1.2.3 指针 19

      1.2.4 指针与数组 21

      1.3 计算机组成基础 23

      1.3.1 intel的发展历史 23

      1.3.2 计算机程序的组成 29

      1.3.3 计算机的内存管理与内存地址 36

      1.3.4 计算机程序的执行 44

      1.4 os概述 52

      1.4.1 os的发展历程和分类 53

      1.4.2 常用的os系统 56

      1.5 小结 57

      第2章 并发基础 58

      2.1 并发与并行 58

      2.1.1 并发 58

      2.1.2 并行 59

      2.1.3 并发与并行带来的问题 59

      2.2 传统os并发控制 60

      2.2.1 p-v原语 60

      2.2.2 信号量 61

      2.2.3 互斥量 62

      2.2.4 自旋锁 62

      2.2.5 读写锁 63

      2.2.6 死锁 64

      2.3 cpu并发控制 66

      2.3.1 中断控制 66

      2.3.2 缓存一致协议 67

      2.3.3 系统屏障 69

      2.3.4 线/缓存锁 73

      2.4 linux内核并发控制 73

      2.4.1 linux内核信号量与p-v原语实现 74

      2.4.2 linux内核互斥量实现 80

      2.4.3 linux内核自旋锁实现 80

      2.4.4 linux内核读写锁实现 84

      2.4.5 linux内核中断控制与内核占 91

      2.4.6 linux内核seq锁实现 98

      2.4.7 linux内核rcu锁实现 100

      2.5 glibc和pthread库 105

      2.5.1 c标准、crt与glibc 105

      2.5.2 linuxthread与ix、ngtp、nptl 107

      2.5.3 nptl常用函数与实现 108

      2.6 小结 131

      第3章 常见语言的线程实现 132

      3.1 汇编语言多线程实现 132

      3.2 c语言多线程实现 133

      3.3 go语言多线程实现 134

      3.4 python语言多线程实现 135

      3.5 java语言多线程实现 135

      3.6 不同语言并发异同与知识推理 136

      3.7 小结 136

      第4章 java并发入门 137

      4.1 java thread类核心与方 137

      4.1.1 走进thread 138

      4.1.2 run方 139

      4.1.3 start方 139

      4.1.4 stop方 140

      4.1.5 destory方 140

      4.1.6 interrupt方 141

      4.1.7 sleep方 142

      4.1.8 join方 142

      4.1.9 thread方使用与线程状态转换 143

      4.2 runnable与callable的使用 144

      4.3 future接的使用 146

      4.4 promise接的使用 147

      4.5 volatile关键字的使用 147

      4.6 synchronized关键字的使用 148

      4.7 小结 149

      第5章 juc之java线程池 150

      5.1 executor与executorservice详解 150

      5.1.1 executor接 150

      5.1.2 executorservice接 151

      5.2 threadpoolexecutor详解 156

      5.2.1 threadpoolexecutor例子 156

      5.2.2 threadpoolexecutor核心数据结构 156

      5.2.3 execute方的实现 159

      5.2.4 shutdown方实现 164

      5.2.5 awaittermination方的实现 166

      5.2.6 shutdownnow方的实现 167

      5.3 scheduledthreadpoolexecutor详解 168

      5.3.1 scheduledthreadpoolexecutor例子 169

      5.3.2 scheduledexecutorservice接 170

      5.3.3 scheduledthreadpoolexecutor核心变量 170

      5.3.4 scheduleatfixedrate实现与 172

      5.3.5 scheduledfuturetask实现与 176

      5.3.6 schedulewithfixeddelay实现与 177

      5.3.7 shutdown实现与 178

      5.4 构建不同线程池 179

      5.4.1 fixedthreadpool 179

      5.4.2 singlethreadexecutor 179

      5.4.3 cachedthreadpool 180

      5.4.4 singlethreadscheduledexecutor 180

      5.4.5 scheduledthreadpool 181

      5.5 forkjoinpool详解 181

      5.5.1 forkjoinpool核心数据结构与方 181

      5.5.2 forkjoinpool externalpush实现 185

      5.5.3 forkjoinpool externalsubmit实现 185

      5.5.4 forkjoinpool signalwork实现 187

      5.5.5 forkjoinpool tryaddworker实现 188

      5.5.6 forkjoinpool createworker实现 189

      5.5.7 forkjoinpool registerworker实现 189

      5.5.8 forkjoinpool forkjoinworkerthread执行 190

      5.5.9 forkjoinpool scan取算 191

      5.5.10 forkjoinpool runtask 194

      5.5.11 forkjoinpool awaitwork 196

      5.5.12 forkjoinpool切割子任务 197

      5.5.13 forkjointask doexec 198

      5.5.14 forkjointask fork 202

      5.5.15 forkjointask join 202

      5.5.16 forkjoinpool awaitjoin 204

      5.5.17 forkjoinpool tryremoveandexec 205

      5.5.18 forkjoinpool heltealer 207

      5.5.19 forkjoinpool trypensate 209

      5.5.20 forkjoinpool shutdown 211

      5.5.21 forkjoinpool awaittermination 214

      5.5.22 forkjoinpool结 215

      5.5.23 recursiveaction 216

      5.5.24 recursivetask 217

      5.5.25 countedpleter 218

      5.6 pletablefuture详解 234

      5.6.1 pletablefuture 概念与例子 234

      5.6.2 pletablefuture pletionstage接 235

      5.6.3 pletablefuture runasync 237

      5.6.4 pletablefuture tplete 238

      5.6.5 pletablefuture pletion 239

      5.6.6 pletablefuture allof 246

      5.7 小结 253

      第6章 juc之同步结构 254

      6.1 同步结构基础实现 254

      6.1.1 lock接 254

      6.1.2 condition接 255

      6.1.3 locksupport类 255

      6.1.4 aqs类 256

      6.1.5 队列核心接 259

      6.2 reentrantlock实现与 262

      6.3 reentrantreadwritelock实现与 264

      6.4 semapher实现与 271

      6.5 futuretask实现与 273

      6.6 arrayblockingqueue实现与 278

      6.7 linkedblockingqueue实现与 281

      6.8 linkedblockingdeque实现与 284

      6.9 linkedtransferqueue实现与 288

      6.10 synchronousqueue实现与 295

      6.11 priorityblockingqueue实现与 305

      6.12 concurrentlinkedqueue实现与 310

      6.13 concurrentlinkeddeque实现与 315

      6.14 threadlocalrandom实现与 326

      6.15 copyonwritearraylist实现与 329

      6.16 copyonwritearrayset实现与 331

      6.17 countdownlatch实现与 333

      6.18 cyclicbarrier实现与 335

      6.19 concurrenthashmap实现与 338

      6.20 concurrentskiplistmap实现与 354

      6.21 concurrentskiplistset实现与 363

      6.22 exchanger实现与 364

      6.23 phaser实现与 372

      6.24 小结 380

      第7章 java nio详解 382

      7.1 nio三剑客之buffer 382

      7.1.1 buffer 383

      7.1.2 bytebuffer 385

      7.1.3 heapbytebuffer 394

      7.1.4 mappedbytebuffer 396

      7.1.5 directbytebuffer 398

      7.2 nio三剑客之channel 403

      7.2.1 channel 403

      7.2.2 filechannel 404

      7.2.3 socketchannel 408

      7.2.4 serversocketchannel 412

      7.2.5 datagramchannel 415

      7.3 nio三剑客之selector 420

      7.3.1 selector 420

      7.3.2 selectionkey 423

      7.4 小结 431

      第2篇 深入java并发

      第8章 jvm synchronized与volatile详解 434

      8.1 jvm源码分析之unsafe类 434

      8.1.1 pareandswap类方实现 435

      8.1.2 getintvolatile方实现 435

      8.1.3 putintvolatile方实现 435

      8.1.4 putorderedint方实现 436

      8.1.5 park方实现 437

      8.1.6 loadfence方实现 438

      8.1.7 storefence方实现 438

      8.1.8 fullfence方 438

      8.2 jvm源码分析之原子类 439

      8.2.1 atomicinteger实现与 439

      8.2.2 atomicboolean实现与 440

      8.2.3 atomicintegerarray实现与 441

      8.2.4 atomicintegerfieldupdater实现与 443

      8.2.5 atomiclong实现与 445

      8.2.6 atomiclongarray实现与 446

      8.2.7 atomiclongfieldupdater实现与 447

      8.2.8 atomicmarkablereference实现与 450

      8.2.9 atomicstampedreference实现与 451

      8.2.10 atomicreference实现与 454

      8.2.11 atomicreferencearray实现与 454

      8.2.12 atomicreferencefieldupdater实现与 455

      8.2.13 doubleaccumulator实现与 457

      8.2.14 doubleadder实现与 465

      8.2.15 longaccumulator实现与 466

      8.2.16 longadder实现与 467

      8.3 volatile分析 469

      8.3.1 jvm内存模型 469

      8.3.2 java中happens-before原则 469

      8.3.3 java中volatile语义 470

      8.3.4 java中volatile字节码 472

      8.3.5 jvm中putstatic和getstatic字节码 473

      8.3.6 c/c++中的volatile 475

      8.3.7 jvm中volatile对于禁止重排序的实现 477

      8.3.8 从pthread线程库分析c的volatile语义 480

      8.3.9 jmm和cpu模型 484

      8.4 synchronized源码分析 488

      8.4.1 java对象头 488

      8.4.2 _monitorenter 获取锁过程 490

      8.4.3 _monitoret 释放锁过程 513

      8.4.4 object.wait 等待过程 518

      8.4.5 object.notify 唤醒过程 522

      8.4.6 object.notifyall 唤醒过程 524

      8.4.7 object.hashcode 获取哈希码过程 526

      8.5 小结 530

      第9章 aqs源码详解 531

      9.1 pare and swap详解 531

      9.1.1 pare and swap概念 531

      9.1.2 java层面pare and swap实现 531

      9.1.3 hotspot虚拟机层面pare and swap实现 532

      9.1.4 汇编层面pare and swap实现 533

      9.2 aqs核心之node类 533

      9.3 aqs核心之head和tail变量 534

      9.4 aqs核心之state变量 535

      9.5 aqs核心之acquire过程 536

      9.6 aqs核心之acquireinterruptibly过程 540

      9.7 aqs核心之acquireshared过程 541

      9.8 aqs核心之acquiresharedinterruptibly过程 544

      9.9 aqs核心之release过程 544

      9.10 aqs核心之releaseshared过程 545

      9.11 aqs核心之条件变量 545

      9.11.1 conditionobject类 545

      9.11.2 await node等作 546

      9.11.3 signal node唤醒作 550

      9.11.4 相关工具方详述 552

      9.12 小结 553

      0章 jvm线程详解 554

      10.1 jni详述 554

      10.1.1 jni概念 554

      10.1.2 jvm执行外部动态库 556

      10.1.3 jvm执行动态库 578

      10.1.4 jnienv结构体 583

      10.2 java thread类源码解析 584

      10.3 java thread start解析 585

      10.4 java thread stop解析 592

      10.5 java thread interrupt解析 594

      10.6 java thread isinterrupted解析 595

      10.7 java thread sleep解析 596

      10.8 java thread yield解析 598

      10.9 java thread suspend解析 599

      10.10 java thread resume解析 601

      10.11 jvm thread层级结构 601

      10.12 jvm互斥体 605

      10.12.1 parkevent与parker 606

      10.12.2 mutexlocker 614

      10.12.3 mutexlockerex 615

      10.12.4 mutex和monitor 616

      10.13 小结 623


      内容简介:

      本书致力于介绍java高并发编程方面的知识。由于多线程处理涉及的知识内容十分丰富,因此介绍时必须从java层面的讲解一直深入到底层的知识讲解。为了帮助读者轻松阅读本书并掌握其中知识,本书做了大量基础知识的铺垫。在篇基础知识储备中,主要介绍计算机、并发基础、常见语言的线程实现、java并发入门、juc之java线程池、juc之同步结构、javanio详解等内容。在第2篇深入java并发中,详细介绍了juc包中所有使用的原子类的与源码实现;非常关键且容易出错的volatile关键字的,从java、jvm、c、汇编、cpu层面对其进行详细讲解;synchronized在jvm中获取锁和释放锁的流程;juc包的核心结构——aqs的与源码实现,通过逐方、逐行的解释,帮助读者掌握aqs中提供的获取锁、释放锁、条件变量等作的实现与。后,详细介绍了jvm中jni的实现,将javathread对象中的所有方在jvm层面的实现流程进行了详细描述,以帮助读者在使用这些方时,知道底层发生了什么,以及发生异常时如何从容解决问题。

      作者简介:

      黄俊专注于研究java语言专注于研究hotspot专注于研究linux内核专注于研究c语言与汇编语言专注于研究架构设计专注于研究多线程并发处理专注于研究高效学方式曾职于美团、阿里前新东方业务架构师

      配送说明

      ...

      相似商品

      为你推荐

    孔网啦啦啦啦啦纺织女工火锅店第三课

    开播时间:09月02日 10:30

    即将开播,去预约
    直播中,去观看