自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 垃圾收集器总结

文章目录垃圾收集器总结各种收集器组合使用的参数Serial + CMSParNew + CMSSerial + Serial OldParNew + Serial OldParallel Scavenge + Serial OldParallel Scavenge + Parallel OldG1串行收集器SerialSerial Old并行收集器ParNewParallel ScavengePa...

2018-10-30 16:40:22 383

原创 虚拟机类加载机制

文章目录什么是类加载?类加载的生命周期类加载的时机类与接口的Class初始化有什么区别?类加载过程中的加载阶段做了什么事?类加载过程中的验证阶段做了什么事?类加载过程中的准备阶段做了什么事?类加载过程中的解析阶段做了什么事?什么是符号引用和直接引用?类加载过程中的初始化阶段做了什么事?什么是类加载器?类加载器的作用 什么是类加载? 虚拟机把类的数据从Class文件(二进制字节流)加载到内存,并对数...

2018-10-30 16:35:19 308

原创 线程安全与锁优化

文章目录一、线程安全的实现方法(一)互斥同步(二)非阻塞同步二、锁优化(一)自旋锁与自适应自旋(二)锁消除(三)锁粗化(四)轻量级锁1、轻量级锁的加锁过程:2、轻量级锁的解锁过程(五)偏向锁1、偏向锁原理 一、线程安全的实现方法 (一)互斥同步 互斥是实现同步的一种手段,临界区(Critical Section)、互斥量(Mutex)、信号量(Semaphore)都是主要的互斥实现方式。 互...

2018-10-30 16:33:32 151

原创 Java内存模型与线程

文章目录一、QA计算机硬件中高速缓存的作用是什么?在处理器与内存之间加入高速缓存会出现什么问题,这个问题又是怎么解决的?什么是内存模型?为什么要定义Java内存模型?它的定义的什么?Java内存模型中主内存与工作内存的关系是什么?主内存与工作内存的具体交互协议是什么?volatile的作用是什么?什么是happens-before原则?举一个先行发生原则的例子Java内存模型是围绕着在并发过程中如...

2018-10-30 16:26:23 110

原创 JUC并发集合总结

文章目录ConcurrentLinkedQueue代码实现:ConcurrentLinkedDeque主要API介绍代码实现DelayQueue代码实现ArrayBlockingQueue代码实现LinkedBlockingQueueLinkedBlockingDeque主要API介绍代码实现PriorityBlockingQueue代码实现SynchronousQueue代码实现LinkedTr...

2018-10-30 15:37:14 635

原创 CAS和ABA问题

文章目录一、什么是CAS (Compare And Swap) ?二、JUC是如何利用CAS的?三、什么是ABA问题? 一、什么是CAS (Compare And Swap) ? 在多线程环境下执行"check and act"这样的代码,如果未能保证原子性,那么程序无法按照期望的那样运行. 一种解决方案是: 采用同步锁的方式来保证原子性,但是性能不高. 第二种解决方案: 利用CPU的特性来保证...

2018-10-30 14:13:19 170

原创 2.对象的组合、基础构建模块

文章目录一、QA1、如何设计一个线程安全的类?2、什么是实例封闭?3、写一个通过实例封闭的机制来确保线程安全的例子4、Java监视器是什么?Java监视器模式又是什么?5、写一个Java监视器模式的例子6、什么线程安全性的委托?如果一个类中的所有状态都是线程安全的,那么这个类是线程安全的吗?7、如何对现有的线程安全类添加新功能(不能修改源代码)?二、其他三、示例代码1、基于监视器的车辆跟踪器,性能...

2018-10-30 14:06:31 161

原创 1.简介、线程安全性、对象的共享

文章目录一、QA1、为什么要在计算机中加入操作系统?2、不同进程之间如何通信?3、为什么会出现线程?4、为什么要使用多线程,它的优势是什么?5、使用多线程有什么风险?6、怎样判断一个类是线程安全的?7、什么是竞态条件?8、多线程环境下读取变量时要不要同步?9、volatile关键字的作用是什么?10、什么是逸出?11、如何方式逸出?12、什么是不可变对象?13、被final修饰的域除了不能被修改还...

2018-10-30 13:54:42 160

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除