随笔分类 -  并发编程

在java中关于并发的知识
摘要:通用线程模型 通用线程模型 在很多研发当中,实际应用是基于一个理论再进行优化的。所以,在了解JVM规范中的Java线程的生命周期之前,我们可以先了解通用的线程生命周期,这有助于我们后续对JVM线程生命周期的理解。 首先,通用的线程生命周期有五种,分别是:新建状态(NEW)、可运行状态(RUNNABL 阅读全文
posted @ 2019-08-07 22:05 半生瓜丶 阅读(289) 评论(0) 推荐(1)
摘要:什么是管程? 什么是管程? 它是monitor在操作系统领域中的间接翻译,也可以称它为监视器。那管程的具体作用是什么呢?:它是描述并实现对共享变量的管理与操作 ,使其在多线程环境下能正确执行的一个管理策略。基于这个定义,我们也可以把管程当作一个临界资源区的管理策略,管程的实现可以是多样的。下面我们就 阅读全文
posted @ 2019-07-26 17:01 半生瓜丶 阅读(2402) 评论(0) 推荐(1)
摘要:源头的源头——为什么会有这三个问题。 源头的源头——为什么会有这三个问题。 先说并发问题的源头: 那么,这三个问题的源头又是什么呢?——那就是为了缓解CPU、内存、硬盘这三者的速度差异带来的问题。 我们都知道,这三者的速度差异非常的大,无论哪一代计算机都有这样的特征。由于木桶效应,所以就需要有一些方 阅读全文
posted @ 2019-07-20 16:00 半生瓜丶 阅读(737) 评论(0) 推荐(1)
摘要:为什么要用线程池? 为什么要用线程池? 我们都知道,每一次创建一个线程,JVM后面的工作包括:为线程建立虚拟机栈、本地方法栈、程序计数器的内存空间(下图可看出),所以线程过多容易导致内存空间溢出。同时,当频繁的创建和销毁线程容易浪费系统的计算能力在资源的回收和申请中。 另外:创建过多的线程,会导致c 阅读全文
posted @ 2019-07-05 15:13 半生瓜丶 阅读(10408) 评论(0) 推荐(1)