作者: 一字马胡 转载标志 【2017-11-01】 更新日志 日期 更新内容 备注 2017-11-01 新建文章 初版 本文主要内容索引 1、Java线程 2、线程模型 3、Java线程池 4、Future(各种Fu…
分类:JVM
Java中的WeakHashMap
今天一起来看下java.util包里的WeakHashMap工具类。 WeakHashMap的定义如下: public class WeakHashMap<K,V> extends AbstractMap&l…
JVM类加载机制详解
引言 如下图所示,JVM类加载机制分为五个部分:加载,验证,准备,解析,初始化,下面我们就分别来看一下这五个过程。 加载 加载是类加载过程中的一个阶段,这个阶段会在内存中生成一个代表这个类的java.lang.Class…
java多线程之三——volatile
在多线程编程中,Synchronized 和 volatile 都扮演者重要的角色,前面的文章我们已经了解了java内置锁Synchronized ,它保证了并发过程中的可见性与原子性,避免了共享数据的错误。 而 Vol…
java多线程之二——Synchronized
在java多线程并发编程中,Synchronized一直占有很重要的角色。Synchronized通过获取锁来实现同步。先来看一下,它的使用方法: package com.Vinctor.Tst; public clas…
java多线程之一/Java内存模型(JMM)
在讲解之前,先区别两个概念:java内存模型与JVM内存模型。 java内存模型:JMM(Java Memory Model),JMM的目的是为了解决Java多线程对共享数据的读写一致性问题,通过Happens-Befo…
JVM——Java虚拟机架构
0. 前言 Java虚拟机(Java virtualmachine) 实现了Java语言最重要的特征:即平台无关性。 平台无关性原理:编译后的 Java程序(.class文件)由 JVM执行。JVM…
jvm系列(二):JVM内存结构
所有的Java开发人员可能会遇到这样的困惑?我该为堆内存设置多大空间呢?OutOfMemoryError的异常到底涉及到运行时数据的哪块区域?该怎么解决呢?其实如果你经常解决服务器性能问题,那么这些问题就会变的非常常见,…
Java:关于值传递你需要了解的事情
我们都知道,在Java中,方法的参数传递永远都是指值传递。让我们来看一看基本类型和集合的参数传递在内存中是如何体现的。原文链接:dzone.com/articles/ja… 在讨论Java中参数是如何传递之前,我们有必要…
Lombok原理分析与功能实现
前言 这两天没什么重要的事情做,但是想着还要春招总觉得得学点什么才行,正巧想起来前几次面试的时候面试官总喜欢问一些框架的底层实现,但是我学东西比较倾向于用到啥学啥,因此在这些方面吃了很大的亏。而且其实很多框架也多而杂,代…
JVM、GC和常用命令
这是11月份的一个分享,借着组内分享的机会,重新梳理了一遍JVM的一些基本概念和学习资料。在这个PPT中,关于G1的部分比较粗略,最近正在恶补G1的知识,后面可能会单独整理一篇分享出来。需要原件的,可以在我的公众号(du…
记一道 Java 综合面试题
前言 昨天看了一道关于异常处理的题:由一道 Java finally 执行顺序的题引发的思考,今天又在牛客网看到一道更深的题,这次加上了一个子父类继承关系的知识点。 原题 public class Test { publ…