一、内存模型 首先我们思考一下一个java线程要向另外一个线程进行通信,应该怎么做,我们再把需求明确一点,一个java线程对一个变量的更新怎么通知到另外一个线程呢?我们知道java当中的实例对象、数组元素都放在java堆中,java堆是线程共享的。(我们这里把java堆称为主内存),而每一个线程都是 ...
分类:
编程语言 时间:
2018-07-05 14:54:26
阅读次数:
128
1.Java多线程-认识Java线程 2.Java多线程-线程安全 3.Java多线程-线程协作 4.Java多线程-线程池 5.Java多线程-栅栏 6.Java多线程-Fork/Join ...
分类:
编程语言 时间:
2018-07-04 01:17:07
阅读次数:
150
1.Java多线程-认识Java线程2.Java多线程-线程安全3.Java多线程-线程协作4.Java多线程-线程池5.Java多线程-栅栏6.Java多线程-Fork/Join1.1 什么是多线程 计算机的核心硬件有磁盘、内存、CPU,磁盘用来持久化保存数据,CPU用于计算,内存是磁盘和CPU之... ...
分类:
编程语言 时间:
2018-07-03 23:49:46
阅读次数:
134
什么是进程? 进程是指可执行程序并存放在计算机存储器的一个指令序列,它是一个动态的执行过程; 多任务可以同时进行什么是线程? 线程是比进程更小的运行单位,线程相当于一个子程序; cpu通过时间片轮转的方式来达到多任务同时运行的效果线程的创建: 1.创建Thread类的子类 2.创建实现Runnabl ...
分类:
编程语言 时间:
2018-07-03 12:02:02
阅读次数:
216
02 JVM 系列(二)内存模型 一、JVM 内存组成 (1) PC 寄存器(线程私有) Java 虚拟机会为每个线程创建 PC 寄存器,在任意时刻,一个 java 线程总是在执行一个方法,这个方法被称为当前方法。 如果当前方法不是本地方法,PC 寄存器就会执行当前正在被执行的指令,如果是本地方法, ...
分类:
其他好文 时间:
2018-07-01 11:53:41
阅读次数:
211
《编程思想之多线程与多进程(1)——以操作系统的角度述说线程与进程》一文详细讲述了线程、进程的关系及在操作系统中的表现,这是多线程学习必须了解的基础。本文将接着讲一下Java线程同步中的一个重要的概念synchronized. synchronized是Java中的关键字,是一种同步锁。它修饰的对象 ...
分类:
编程语言 时间:
2018-06-30 14:43:43
阅读次数:
148
线程池的优点 1、线程是稀缺资源,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以重复使用。 2、可以根据系统的承受能力,调整线程池中工作线程的数量,防止因为消耗过多内存导致服务器崩溃。 线程池的创建 corePoolSize:线程池核心线程数量 maximumPoolSize:线程池最大 ...
分类:
编程语言 时间:
2018-06-29 20:41:00
阅读次数:
164
参考链接:http://www.importnew.com/28053.html 最近得空,想写篇文章好好说说 java 线程池问题,我相信很多人都一知半解的,包括我自己在仔仔细细看源码之前,也有许多的不解,甚至有些地方我一直都没有理解到位。 说到线程池实现,那么就不得不涉及到各种 Blocking ...
分类:
编程语言 时间:
2018-06-29 14:10:22
阅读次数:
193
进程和线程 进程的诞生 操作系统中有2个任务A,B,任务A先执行,执行到一半需要io,因此要大量时间,在这个时间段内cpu是空闲的,浪费了资源,于是就有进程,当A暂时无法利用cpu,但是又不能销毁时,就把它暂存起来,让B来执行。B执行完或者需要A执行时,根据暂存的信息回复过来。 每个进程都对应一定的 ...
分类:
编程语言 时间:
2018-06-27 14:59:56
阅读次数:
213
进程:是程序的执行过程,程序停止就叫程序,运行就叫进程 线程:系统中最小的执行单元,同一个进程有多个线程,线程可以共享资源,一旦出现共享资源,必须注意线程安全。 java线程分为两种:一种是守护线程,例如GC;另一种是用户线程(用户线程指不需要内核支持而在用户程序中实现的线程,其不依赖于操作系统核心 ...
分类:
编程语言 时间:
2018-06-27 00:19:36
阅读次数:
230