简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
《深入理解java虚拟机》第二版 67页,一次对象自我拯救这个例子很不错,在这里分享出来。并且从源码角度进行分析。代码如下:/*** 1 对象可以在被GC时自我拯救* 2 这种自救机会只有一次,因为一个对象的finalize()方法最多只会被系统自动调用一次* Created by 明明如月 on 2017-05-24.*/public cla
以前直接从官网下载IDEA,每次更新再去官网下载。后来接触了JetBrains ToolBox 后,直接可以通过该工具进行JetBrains全套软件的升级、卸载等。该工具除了可以升级IDEA等软件之外,还可以直接打开JetBrains系列软件创建的项目,非常方便。BUT由于默认的最大堆内存为750M,相对较小,尤其开启自动编译项目,如下图,会比较卡,因此需要设置虚拟机参数。...
一、背景Java的函数签名是基础知识,也是面试中常问的知识点之一,虽然难度不大,但是很多人并没有关注过或者查过这个问题。二、解释根据维基百科的定义:https://en.wikipedia.org/wiki/Type_signature2.1 类型签名在虚拟机中,内部类型签名在字节码层面用来识别函数或者类。例如:StringString.substring(int...
vmware创建虚拟机时一直没反应创建完后就这样,跟没创建前一样因为windows自带的防火墙开启了,从服务里面关闭后就可以用了,如果不想开机的时候防火墙启动就直接禁用掉。
一、背景《深入理解java虚拟机》第二版 57页对String.intern()返回引用的测试代码如下:/** String的intern例子* Created by 明明如月 on 2017-05-24.*/public class RuntimeConstantPoolOOM {public static void main(String[] args) {...
一、背景很多人想学习Java反汇编后的字节码,但是一方面缺乏好的资料,另外一方面缺乏好的工具。关于资料大家可以看 《Java虚拟机规范》、《深入理解Java虚拟机》,还可以购买 JVM字节码相关的专栏。虽然大家可以使用 JDK 自带的 javap 命令行工具,但是总是有些不方便。那么有啥好的工具吗?有。叫啥?jclasslib bytecode viewer接下来详...
一、背景《深入理解Java虚拟机》第93页,3.6.2 大对象直接进入老年代。讲到大对象主要指字符串和数组,虚拟机提供了一个-XX:PretenureSizeThreshold参数,大于这个值的参数直接在老年代分配。这样做的目的是避免在Eden区和两个Survivor区之间发生大量的内存复制(新生代采用复制算法)。但是这里没讲清楚默认值是多少,默认会不会“大”对象直接进入老年代。...
一、背景最近想要下载 neo4j 的 docker 镜像,发现速度不是一般的慢,囧…于是乎,类似于 maven 有国内镜像,docker 是不是也有呢?搜了一下,的确有。二、用法1、打开 docker 选择 Preferences2、切换到 Daemon 选项卡,在 Registry mirrors 添加想要添加的国内镜像如:https://docker.mirrors.ust...
一、问题描述今天用kitematic安装了最新版的mysql,自动启动报没设置密码错误error: database is uninitialized and password option is not specifiedYou need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and M...
前提是先安装和启动docker。本文配套视频:https://www.bilibili.com/video/av53725198/一、Kitematic 是什么Kitematic是一个 Docker GUI 工具,它可以更快速、更简单的运行Docker容器,现在已经支持 Mac /Windows/Linux。Kitematic 目前在Github上开源,而它也早在 201...