![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
lostinai
这个作者很懒,什么都没留下…
展开
-
深入探讨 Java 类加载器
http://www.ibm.com/developerworks/cn/java/j-lo-classloader/简介: 类加载器(class loader)是 Java™中的一个很重要的概念。类加载器负责加载 Java 类的字节代码到 Java 虚拟机中。本文首先详细介绍了 Java 类加载器的基本概念,包括代理模式、加载类的具体过程和线程上下文类加载器等,接着介绍如何开发自己的转载 2013-09-24 21:17:29 · 556 阅读 · 0 评论 -
Java虚拟机
11.JVM内存分哪几个区,每个区的作用是什么?Java虚拟机主要分为以下一个区:方法区:1. 有时候也成为永久代,在该区内很少发生垃圾回收,但是并不代表不发生GC,在这里进行的GC主要是对方法区里的常量池和对类型的卸载2. 方法区主要用来存储已被虚拟机加载的类的信息、常量、静态变量和即时编译器编译后的代码等数据。3. 该区域是被线程共享的。4. 方法区里有一个运行时常转载 2016-10-07 16:20:25 · 614 阅读 · 0 评论 -
java中的volatile和synchronized
这个可能是最好的对比volatile和synchronized作用的文章了。volatile是一个变量修饰符,而synchronized是一个方法或块的修饰符。所以我们使用这两种关键字来指定三种简单的存取变量的方式。 int i1; int geti1() {return i1;}volatile int i2;转载 2016-09-26 11:08:20 · 288 阅读 · 0 评论 -
从一道面试题来认识java类加载时机与过程
说明:本文的内容是看了《深入理解Java虚拟机:JVM高级特性与最佳实践》后为加印象和理解,便记录了重要的内容。 1 开门见山以前曾经看到过一个java的面试题,当时觉得此题很简单,可是自己把代码运行起来,可是结果并不是自己想象的那样。题目如下: class SingleTon { private static SingleTon singleTon = new Singl转载 2016-09-22 14:53:26 · 1497 阅读 · 1 评论 -
Java Class类以及获取Class实例的三种方式
java.lang 类 ClassT - 由此 Class 对象建模的类的类型。例如,String.class 的类型是Class。如果将被建模的类未知,则使用Class。[java] view plaincopyprint?public final class Class extends Object转载 2015-11-13 15:46:45 · 920 阅读 · 0 评论 -
浅析Java虚拟机结构与机制
本文旨在给所有希望了解JVM(Java Virtual Machine)的同学一个概念性的入门,主要介绍了JVM的组成部分以及它们内部工作的机制和原理。当然本文只是一个简单的入门,不会涉及过多繁杂的参数和配置,感兴趣的同学可以做更深入的研究,在研究JVM的过程中会发现,其实JVM本身就是一个计算机体系结构,很多原理和我们平时的硬件、微机原理、操作系统都有十分相似的地方,所以学习JVM本身也是加深自转载 2015-09-10 14:07:56 · 341 阅读 · 0 评论 -
JNI: API的调用
什么都不说,我们先来看代码:[cpp] view plaincopy#include /* where everything is defined */ ... JavaVM *jvm; /* denotes a Java VM */ JNIEnv *env; /* pointer to native method inter转载 2015-05-08 17:37:43 · 584 阅读 · 0 评论 -
如何在多线程中使用JNI?
如果你想了解JNI在如何在多线程下使用如果你在子线程使用JNI时遇到findClass不能找到目标Class,而在主线程下却能找到该Class的问题。或是GetEnv返回NULL的问题如果你想多学点编程技术的话那么,这篇文章就是为你而写的, :)最近工作中遇到这么个问题:c++代码需要调用Android的API来做一个比较耗时的任务,因为有点耗时,希望能有个进度条显示给用户,很自然转载 2015-05-08 17:39:50 · 575 阅读 · 0 评论 -
Java内存访问重排序的研究
http://tech.meituan.com/java-memory-reordering.html什么是重排序请先看这样一段代码1public class PossibleReordering {static int x = 0, y = 0;static int a = 0, b = 0;public static void main(String[] args)转载 2015-01-15 13:26:31 · 814 阅读 · 0 评论 -
JVM中的栈和局部变量
http://www.cnblogs.com/yyyyy5101/archive/2011/03/23/1992296.html在Java程序中,每当启用一个线程时,JVM就为他分配一个Java栈,栈是以帧为单位保存当前线程的运行状态。今天我们继续深入Java核心,探秘JVM中的栈和局部变量。Java开发中,每当我们在程序中使用new生成一个对象,对象的引用存放在栈里,转载 2014-05-27 15:16:16 · 537 阅读 · 0 评论 -
java内存分配
http://www.cnblogs.com/yyyyy5101/archive/2011/03/23/1992438.html栈、堆、常量池虽同属Java内存分配时操作的区域,但其适用范围和功用却大不相同。本文将深入Java核心,详细讲解Java内存分配方面的知识。Java内存分配与管理是Java的核心技术之一,之前我们曾介绍过Java的内存管理与内存泄露以及Java转载 2014-05-27 15:14:36 · 431 阅读 · 0 评论 -
深入理解Java虚拟机
https://notes.piasy.com/Android-Java/InsideJVM.html第二部分 自动内存管理机制第二章 Java内存区域与内存溢出异常JVM内存区域程序计数器:类似x86 EIP,每个线程都有一个程序计数器;执行native代码时计数器值为空;唯一不会抛出OOM的区域;Java虚拟机栈:线程私有;即函数调用栈,保存函数局部变量;Nat转载 2016-10-08 17:43:12 · 491 阅读 · 0 评论