1.GC的概念

Garbage Collection 垃圾收集(联想下日常生活中垃圾的处理),这里所谓的垃圾指的是在系统运行过程中所产生的一些无用对象,而这些对象是需要占用一定的内存空间和系统资源的,如果这些无用的对象长期不被释放掉,那么会导致内存耗尽,即所谓的内存溢出。因此这些无用的对象必须要能够在一定的范围内及时被回收掉,以确保整个系统有足够的内存可用。
在C/C++中是由程序员自己来申请释放内存...

Continue reading >>

1.JVM内存结构

JVM按照运行时数据的存储结构来划分内存结构,不同格式的数据分别存储在不同的区域,统称为运行时数据,运行时数据包括Java程序本身的数据信息和JVM运行Java需要的额外数据信息。

QQ截图20170511161302.jpg

  • JVM内存结构

  • Non-Heap
    CodeCache
    Permanent Generation space
    Direct Momery

  • Heap

  • JVM GC管理

  • 1.1 jvm运行时的数据区

    • 线程私有:程序计数器、J...

    Continue reading >>

    JVM命令行选项主要有3类:标准选项(eg:-client)、非标准选项(eg:-Xmxsize)、非稳定选项(eg:-XX:+AggressiveOpts)。选项使用说明: 
    -XX:+option 启用选项 
    -XX:-option 不启用选项 
    -XX:option=number 给选项设置一个数字类型值,可跟单位,例如 128k, 256m, 1g 
    -XX...

    Continue reading >>

    1.什么是JVM?

    JVM是Java Virtual Machine(Java虚拟机)的缩写,虚拟机是指通过软件模拟具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。

    Java虚拟机有自己完善的硬体架构,如处理器堆栈寄存器等,还具有相应的指令系统。JVM屏蔽了与具体操作系...

    Continue reading >>

    1.Java程序运行状态

    1.1 java运行状态

    • RUNNABLE:线程处于正在运行状态。

    • TIMED_WAITING(on object monitor) 表示当前线程被挂起一段时间,说明该线程正在执行obj.wait(int time)方法.

    • TIMED_WAITING(sleeping) 表示当前线程被挂起一段时间,即正在执行Thread.sleep(int time)方法.

    • TIMED_WAIT...

    Continue reading >>