读书笔记
lcn_2017
这个作者很懒,什么都没留下…
展开
-
Java并发编程实战读书笔记合集
第一 二章合集 第三章 第四章 第五章 第六章 第七章 第八章 第十章原创 2018-07-23 20:57:27 · 1163 阅读 · 0 评论 -
Java并发编程实战:第八章读书笔记
第八章 线程池的使用 摘要: 本章主要介绍了Executor的配置和调优的一些高级选项,并分析使用该框架的一些危险,以及使用该框架的一些高级用例。 8.3 配置和使用策略 前两小节相对比较基础和概念就暂不多说。 线程池的创建除了Executors的各种方法之外,还可以通过构造函数去自定义化自己的线程池。 本节的重点在于任务队列的管理,文中有三个管理方法,第一使用无界队列,第二使用有界队列...原创 2018-09-02 22:15:08 · 348 阅读 · 0 评论 -
Java并发编程实战:第七章读书笔记
第七章 取消与关闭 摘要: 本章主要介绍了如何结束一个任务的执行。虽然我们通常不会去打断,但要使线程安全、快速、可靠地停下来还是相对复杂的。本章主要的取消分两个方向,第一个就是任务的取消,第二个就是生成任务的线程的取消。 7.1 任务取消 最开始的例子是使用一个标志位每次调用任务之前先检查,这是典型地先检查后执行的代码。那么当任务中含有阻塞的任务时,这个任务就有可能一直阻塞在这里永远不会被返...原创 2018-09-02 20:31:41 · 327 阅读 · 0 评论 -
Java并发编程实战:第六章读书笔记
第六章 任务执行 摘要: 本章主要介绍了任务的概念,一直执行的策略。 6.1 任务 1. 任务的概念 什么是任务? 其实大多是并发编程应用都是围绕"任务执行(Task excution)" 来构造的。任务通常是一些抽象且离散的工作单元,将应用程序的工作分解到多个任务中,可以简化程序的组织结构,提供一种自然的事务边界来优化错误恢复过程,以及提供一种自然的并行工作结构来提升并发性。 2. 什...原创 2018-09-02 13:46:02 · 322 阅读 · 0 评论 -
现代操作系统读书笔记-第二章
第二章 2.1 进程 就操作系统而言,任何多道程序设计系统中的任何一个时刻CPU都只能运行一个进程。 进程的创建 进程是如何创建的 通常有四种情况可以创建进程: 1. 系统初始化 2. 正在运行的程序执行了创建进程的系统调用 3. 用户请求创建了一个新的进程 4. 一个批处理作业的初始化 在Windo...原创 2018-08-14 22:32:42 · 453 阅读 · 0 评论 -
Java并发编程实战:第五章读书笔记
第五章 基础构建模块 摘要: 本章主要介绍了Java中几个比较重要的开发模块。 1. 同步容器类 Vector HashTable 同步容器虽然是线程安全的容器,但是在执行某些操作的时候可能会抛出异常,这并不是我们想要的。例如Vector的getLast和deleteLast两个操作在两个线程中交替运行时,就有可能抛出ArrayIndexOutOfBoundsException。还有一个隐藏...原创 2018-07-29 20:15:09 · 309 阅读 · 0 评论 -
Java并发编程实战:第四章读书笔记
第四章 对象的组合 摘要: 本章我认为最主要就讲了一点,那就是如何构建一个线程安全的类。 1. 线程安全的类 如何设计出线程安全的类,书中给了几个建议翻译成大白话就是 先抽象然后找出哪些状态是不可变的,然后找出变量不可变的条件,最后对可变状态进行并发访问的管理。 我觉得本章比较重点的一个做法就是将线程安全性委托。 在我们写类时,可以将可变的状态封装给一个线程安全的类,这样就叫做线程安全的委...原创 2018-07-29 17:47:29 · 404 阅读 · 0 评论 -
Java并发编程实战:第三章读书笔记
第三章 对象的共享 摘要: 本章主要介绍了 线程安全问题基本都是由共享状态的非同步导致的。 1. 可见性, 所谓可见性其实是一个相对复杂的概念。我理解的可见性就是某一个操作的结果对另外的操作是可见的这就是可见性。 正是因为可见性的不可预见性,所以当我们的代码在没有同步的情况下,经过编译器、处理器以及运行时等都有可能对操作的执行顺序进行调整。 2. 失效数据,这里首先有一个概念就是JMM(...原创 2018-07-29 17:13:52 · 474 阅读 · 0 评论 -
现代操作系统读书笔记-第一章
第一章 摘要: 第一章引论 主要讲述了 操作系统的发展史,现代计算机硬件的简介,现阶段操作系统的分类以及相关的知识 计算机硬件简介 1. 处理器 处理器是电脑的大脑,不同的处理器中维护着一套可执行的指令集 以及几个寄存器 通常情况下有三个: 1. 程序计数器: 记录下一条指令的内存地址 2. 堆栈指针: 记录内存中当前栈的顶端 ...原创 2018-07-23 21:55:37 · 567 阅读 · 0 评论 -
现代操作系统读书笔记合集
第一章 第二章原创 2018-07-23 21:30:25 · 797 阅读 · 0 评论 -
Java并发编程实战:第一章,第二章读书笔记
第一章 摘要: 本章主要讲述并发编程简史,多线程给我们带来的优势 比如: 能发挥出多核处理器的强大能力,异步事件的简化处理等优点,第三节主要讲述了线程带来的风险,接下来我就主要记录一下这几个问题。 1. 安全性问题,在多个线程的系统中 如果对线程间共享的变量操作不当,就会带来千奇百怪的结果。 2. 活跃性问题,安全性意味永远不要发生糟糕的事情,而活跃性则意味着正确的事情最终会发生。 3. ...原创 2018-07-23 21:27:02 · 521 阅读 · 0 评论 -
Java并发编程实战:第十章读书笔记
第十章 避免活跃性危险 摘要: 本章主要介绍了许多可能造成活跃性降低的情况以及相关的危险操作。 10.1 死锁 说道死锁最典型的问题就是哲学家就餐的问题,如果五个哲学家就餐桌上有五支筷子,那么当五个哲学家同时拿起左手边的筷子时,他们就会一直持有一支筷子而等待另外的筷子从而造成死锁,在没有外界介入的情况下他们就将永久的等待下去。 那么除了上述典型的问题还有什么情况有可能导致死锁呢? 锁顺序...原创 2018-09-03 22:39:13 · 333 阅读 · 0 评论