![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java多线程和并发
赤瞳寓言
加油!
展开
-
java多线程与并发(一)——线程基础
参考博客:https://www.cnblogs.com/lwbqqyumidi/p/3804883.html一、线程的生命周期与五种基本状态 分析如下: Java线程具有五中基本状态: 新建状态(New):当线程对象对创建后,即进入了新建状态,如:Thread t = new MyThread(); 就绪状态(Runnable):当调用线程对象的start()方法(t.start...原创 2018-06-24 11:54:50 · 158 阅读 · 0 评论 -
java多线程与并发(十)——设计一个死锁
自己设计一个死锁,来理解死锁的原理。 死锁的定义是,两个或两个以上的线程或进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象。 简化一下,就当成只有两个线程。现在有线程1和线程2。线程1执行过程中,先锁定了对象a,然后需要再锁定b才能继续执行代码;而线程2正巧相反,先锁定了b,需要再锁定a才能继续执行代码。这时,两个线程都等着对方解锁,才能继续执行,这时,两个线程就进入等待状...转载 2018-08-13 15:34:59 · 944 阅读 · 0 评论 -
java多线程与并发(七)——java的动态代理
转自https://blog.csdn.net/u011784767/article/details/78281384(1)什么是代理?大道理上讲代理是一种软件设计模式,目的地希望能做到代码重用。具体上讲,代理这种设计模式是通过不直接访问被代理对象的方式,而访问被代理对象的方法。这个就好比 商户—->明星经纪人(代理)—->明星这种模式。我们可以不通过直接与明星对话的情况下...转载 2018-07-27 11:14:24 · 943 阅读 · 0 评论 -
java多线程与并发(六)——java的垃圾回收机制
参考及引用https://www.cnblogs.com/1024Community/p/honery.htmlGC(Java的垃圾回收机制)概括为三个字: where:运行时内存的分布情况 when:对象何时需要被回收 how:对象如何被回收一、内存分布JVM的内存结构包括五大区域:程序计数器、虚拟机栈、本地方法栈、堆区、方法区。其中程序计数器、虚拟机栈、本地方法栈3个...原创 2018-07-26 21:49:35 · 3433 阅读 · 0 评论 -
java多线程与并发(五)——java中的线程
第四章学习笔记一、线程1、Java中线程的状态: NEW:初始状态 RUNNABLE:运行状态 BLOCKED:阻塞状态 WAITING:等待状态 TIME_WAITING:超时等待状态 TERMINATED:终止状态 注意:将运行和就绪两个状态合并为运行状态。 阻塞状态是线程进入同步锁(synchronized修饰的方法或代码块)时的状态,但是阻塞在java.c...原创 2018-07-21 16:12:29 · 211 阅读 · 0 评论 -
java多线程与并发(九)——浅复制与深复制
转自https://blog.csdn.net/baiye_xing/article/details/717887411.拷贝的引入(1)引用拷贝创建一个指向对象的引用变量的拷贝。package copyDemo;public class copy { public static void main(String[] args){ Teacher...转载 2018-07-28 22:04:05 · 897 阅读 · 0 评论 -
java多线程与并发(八)——java类加载器与OSGi加载
参考https://blog.csdn.net/u010126792/article/details/65940064一、java类加载器机制jvm想执行.class文件第一步就是把class文件装载进内存。 java类加载器的作用是在运行时加载类。 Java类加载机制指的是将java编译后生成的.class文件中的二进制数据读入到内存中,将其放到jvm构造的运行时数据区内存...原创 2018-07-28 16:10:02 · 1590 阅读 · 0 评论 -
java多线程与并发(四)——java内存模型
《Java并发编程的艺术》第三章学习笔记一、内存模型的基础 并发编程中的两个关键问题: 1、线程之间如何通信(线程之间交换信息的机制有两种:共享内存和消息传递) 在共享内存的并发模型中,线程之间共享程序的公共状态,通过写-读进行隐式通信;在消息传递中,必须通过发送消息显式通信。 2、线程之间如何同步(同步:指在程序中控制不同线程间操作发生相对顺序的机制) 共享内...原创 2018-07-12 17:14:50 · 1540 阅读 · 0 评论 -
java多线程与并发(三)——Java并发机制的底层实现原理
学习《java并发编程的艺术》笔记: Java代码在编译后是Java字节码,字节码被类加载到JVM里,JVM执行字节码,最终转换为汇编指令在CPU上执行。 Java中所使用的并发机制依赖于JVM的实现和CPU的指令。1、volatile 见https://blog.csdn.net/u010843421/article/details/78059702 2、synchron...原创 2018-06-27 22:59:31 · 192 阅读 · 0 评论 -
java多线程与并发(二)——初识并发编程
《Java并发编程的艺术》——笔记一 并发编程的目的是为了让程序执行的更快。一、并发编程的挑战1、单核处理器也支持多线程执行 2、时间片一般是几十毫秒,CPU通过不停地切换,使感觉多个线程是同时执行的挑战一:并发执行累加操作不超过百万次时,速度比串行执行慢,因为线程有创建和上写文切换的开销减少上下文切换的方法: -无锁并发编程; -CAS算法; -使用最少线程...原创 2018-06-26 16:12:08 · 142 阅读 · 0 评论 -
Java多线程与并发——线程池ThreadPoolExecutor
JDK1.7:https://www.cnblogs.com/dolphin0520/p/3932921.html JDK1.8:https://blog.csdn.net/programmer_at/article/details/79799267转载 2018-08-30 10:32:17 · 290 阅读 · 0 评论