CGRW_BLOG


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 搜索

再谈阻塞(1):从探究Java线程的状态开始

发表于 2018-10-10 | 分类于 多线程 | 阅读次数:
字数统计: 1,757 | 阅读时长 ≈ 8

本人在《线程生命周期 & 中断机制》一文中提到,可以使用Thread类提供的getState()来获取线程状态,这些状态包括NEW,RUNNABLE,BLOCKED,WAITING,TIMED_WAITING,TERMINATED。而在实践中,BLOCKED似乎状态只出现在synchronized内置锁机制里。那么blocked状态是怎样一种存在?它和waiting状态的区别是什么?一切就从探究Java线程的状态开始。

需要说明的是,本系列不讨论内置锁的膨胀过程,主要研究对象是重量级锁,内置锁的优化会另开文章解析。

阅读全文 »

《Linux内核设计与实现》阅读笔记:(第四章)进程调度

发表于 2018-09-28 | 分类于 Linux | 阅读次数:
字数统计: 3,073 | 阅读时长 ≈ 11

进程调度是操作系统的核心功能,本篇继续追随《Linux内核设计与实现》的脚步,摸清Linux进程调度的原理。

阅读全文 »

Java 7的Coin项

发表于 2018-09-28 | 分类于 Java 7 | 阅读次数:
字数统计: 706 | 阅读时长 ≈ 3

Coin包括六个新特性:switch的String、数字常量新形式、改进的异常处理、TWR、钻石语法、参数警告位置的修改。

阅读全文 »

《Linux内核设计与实现》阅读笔记:(第十五章)进程地址空间

发表于 2018-09-26 | 分类于 Linux | 阅读次数:
字数统计: 1,760 | 阅读时长 ≈ 7

本篇主要是跟随《Linux内核设计与实现》一书,了解进程地址空间相关的技术,从源码的角度理解Linux里进程和线程的区别。

阅读全文 »

《Linux内核设计与实现》阅读笔记:(第十二章)内存管理

发表于 2018-09-25 | 分类于 Linux | 阅读次数:
字数统计: 1,882 | 阅读时长 ≈ 7

书在一开始阐明,第十二章主要讨论的是在内核中获取内存的方法。

阅读全文 »

《Linux内核设计与实现》阅读笔记:(第三章)进程管理

发表于 2018-09-24 | 分类于 Linux | 阅读次数:
字数统计: 2,319 | 阅读时长 ≈ 8

本人第一次翻看《Linux内核设计与实现》的时候,非常享受其中关于Linux进程调度的内容。不同于《深入理解计算机系统》泛而全,此书对于特定领域知识的介绍更加详细,且作者就是Linux抢占式内核、进程调度器等项目的参与者,书中的描述具有权威性。本人将开启一个文章系列作为对此书的阅读笔记。

阅读全文 »

小猪快跑,算法快刷(第一部分)

发表于 2018-09-23 | 分类于 算法 | 阅读次数:
字数统计: 4,188 | 阅读时长 ≈ 15

本篇是快刷《剑指Offer》的第一部分,涉及22道基础习题。

在文章的编排上,本人将每两道题目关联于一个球员名,这样做的目的是为了方便查询。第一部分选取的球员全部来自早些年的巴塞罗那俱乐部,他们未必曾经在同一时期的巴萨效力,但是却是本人在当时进行足球游戏的主力,这些球员名在本人的大脑查询的时间复杂度是O(1)。

阅读全文 »

《Java Concurrency in Practice》学习总结(Part I)

发表于 2018-09-17 | 分类于 多线程 | 阅读次数:
字数统计: 3,078 | 阅读时长 ≈ 11

《Java Concurrency in Practice》的前言已经写明了如何使用这本书:提供一个简化的并发程序编写规则,使开发人员无须掌握Java内存模型底层细节就能编写正确的并发程序。而该书的第一部分(Part I)就介绍了其中最重要的一些规则。下面来列出这一部分各章节的主要内容:

  • 第二、三章:给出了几乎所有用于避免并发危险、构造线程安全的类以及验证线程安全的规则;
  • 第四章:介绍如何将一些小的线程安全类组合成更大的线程安全类;
  • 第五章:介绍了在平台库中提供的一些基础的并发构建模块,包括线程安全的容器类和同步工具类;

其中关于发布逸出、安全发布、线程安全类添加功能、构建高效且可伸缩的结果内存等内容让人醍醐灌顶,本篇将对这些进行笔记。

阅读全文 »

Redis享知享学:RDB原理解析

发表于 2018-09-13 | 分类于 Redis | 阅读次数:
字数统计: 2,718 | 阅读时长 ≈ 11

本篇将聚焦RDB的基本工作原理。

父子进程是如何执行代码的?server.dirty_before_bgsave的作用是什么?走进这篇文章,慢慢走近这些问题的答案。

阅读全文 »

Redis享知享学:单机数据库实现:watched_keys和id属性

发表于 2018-09-11 | 分类于 Redis | 阅读次数:
字数统计: 1,054 | 阅读时长 ≈ 4

关于Redis单机数据库的实现,就要接近尾声,本篇将解析剩下的属性watched_keys和id。

watch命令能在事务开启后执行吗?watch后,事务失败与否,对于一个key需要重新watch么?本篇文章将尝试给出解答。

阅读全文 »
1…456…15
Cgrw

Cgrw

146 日志
43 分类
117 标签
GitHub E-Mail
© 2021 Cgrw
由 Hexo 强力驱动
|
主题 — NexT.Pisces v5.1.4