读书笔记
文章平均质量分 75
业精勤而荒嬉
知其然知其所以然
展开
-
多线程设计模式:Thread-Per-Message模式
为每个命令或请求新分配一个线程,由这个线程来执行处理,这就是Thread-Per-Message模式。举个例子: 名字 说明 Main 向Host发送字符,显示请求的类 Host 针对请求创建线程的类 Helper 提供字符显示功能的被动类...原创 2018-09-19 16:29:04 · 389 阅读 · 0 评论 -
JUC与生产者消费者
前面一篇文章介绍了生产者消费者模式,这篇来看看JUC包下的哪些类与该模式有关。生产者消费者模式中有个中间类Channel,对于数据Data起到通道作用,还确保了Producer与Consumer这些线程的协调运行。在前篇文章所举的例子中的Table类担任这个角色,内部是使用数组实现的队列配合synchronized关键字。而在JUC包下提供了BlockingQueue接口及其实现类,它们相当于C...原创 2019-01-20 13:19:53 · 446 阅读 · 0 评论 -
Java内存区域与对象
本片文章主要是《深入理解Java虚拟机》的读书笔记1 运行时数据区域1.1 程序计数器由于在JVM中,多线程是通过线程轮流切换来获得CPU执行时间的,因此,在任一具体时刻,一个CPU的内核只会执行一条线程中的指令,因此,为了能够使得每个线程都在线程切换后能够恢复在切换之前的程序执行位置,每个线程都需要有自己独立的程序计数器,并且不能互相被干扰,否则就会影响到程序的正常执行次序。因此,可以这...原创 2019-02-22 16:46:49 · 180 阅读 · 0 评论