简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
一概述本文属于《并发编程的艺术》读书笔记系列,之前整理了《深入理解java虚拟机》,在最后一部分高效并发觉得偏少,于是按照方腾飞的书来整理。二volatile的应用在多线程并发编程中synchronized和Volatile都扮演着重要的角色,Volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。可见性的意思是当一个线程修改一个共享变量时,另
概述类加载器(class loader)用来加载 Java 类到 Java 虚拟机中。一般来说,Java 虚拟机使用 Java 类的方式如下:Java 源程序(.java 文件)在经过 Java 编译器编译之后就被转换成 Java 字节代码(.class 文件)。类加载器负责读取 Java 字节代码,并转换成java.lang.Class类的一个实例。每个这样的实例用来表示一个 Java 类。
原文地址:http://flychao88.iteye.com/blog/2182953原文如下:Java虚拟机规范规定JVM的内存分为了好几块,比如堆,栈,程序计数器,方法区等,而Hotspot jvm的实现中,将堆内存分为了三部分,新生代,老年代,持久带,其中持久带实现了规范中规定的方法区,而内存模型中不同的部分都会出现相应的OOM错误,接下来我们就分开来讨论一下。栈溢出(StackOverf
上篇学习笔记用mat分析dump,就是用jmap命令生成的。所以借这个机会整理下jmap常用命令背景:java dump是Java虚拟机的运行时快照。将Java虚拟机运行时的状态和信息保存到文件。线程Dump,包含所有线程的运行状态。纯文本格式。堆Dump,包含线程Dump,幵包含所有堆对象的状态。二进制格式。jmap 的用途是为了展示java进程的内存映射信息,或者堆内存详情。常用的参数如下:
之前的关于OOM异常的学习笔记,强迫自己整理了异常及对应的参数。本片学习笔记梳理下相关背景知识。一背景:作为java码农,对于常见的编码,编译,执行比较熟悉了。更加关注框架跟业务实现,但是回头想想,当我们执行java命令后究竟发生了什么,就是我们通过JVM与机器交互,Java通过使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java具备了一次编写,多处运行的特性。JVM主要由类加载器子系统
大概整理一遍,觉得有些乱,还是参照原书那样显得条理。本篇只是jvm目录索引。第一章 主要介绍java概述,干货不多看原文。第二部分 :自动内存管理机制 第二章:java内存区域与内存溢出异常 运行时数据区 虚拟机对象探秘 内存溢出异常分析 第三章 垃圾收集器与内存分配策略 垃圾回收算法 内存分配与回收策
新给了开发环境机器。但是证书给了个pem格式。别人用蜗牛那个工具可以直接使用,我是老版本的securecrt用不了,懒得换工具了,那就转换一下证书吧。随便找一台Linux机器,登陆进去,把pem文件传上去。生成公密钥 .pub 文件。使用公密钥时,SecureCRT会询问私密钥或者.pem文件ssh-keygen -e -f key.pem >> key.pem.pub
本文属于分布式系统学习笔记系列,上一篇笔记梳理了2阶段、3阶段提交。本文来梳理paxos算法。背景:本书第二章里面作者详细介绍了paxos算法的由来,这里从2.2.3开始。Paxos算法实现的是分布式系统多个结点之上数据的一致性,这个算法有如下特性1.基于消息传递,允许消息传输的丢失,重复,乱序,但是不允许消息被攥改2.在结点数少于半数失效的情况下仍然能正常的工
http://blog.csdn.net/hengyunabc/article/details/44244951
上一篇看了druid的初始化方法。本篇继续看连接获取的源码。基于1.1.6版本 public DruidPooledConnection getConnection(long maxWaitMillis) throws SQLException {init(); //先初始化,已经初始化的跳过if (filters.size() > 0) { //判断过...