标签:内存模型

Java

【Java并发】线程安全性

1

wenming.gapo 发布于 2019-02-16

线程安全性 定义:当多个线程访问某个类时,不管运行时环境采用 何种调度方式 或者这些线程将如何交替执行,并且在主调代码中 不需要任何额外的同步或协同 ,这个类都能表现出 正确的行为 ,那么就称这个类是线程安全的。 线程安全性主要体现在三个方面:原子性、可见性、有序性: 原子性 :...

阅读(18)评论(0)赞 (0)

Java

JVM问题及解答

3

yanxinchi 发布于 2019-02-15

常见JVM问题 JVM内存模型,GC机制和原理。 注意JVM内存模型与Java内存模型(JMM)不是同一个东西。 JVM = 类加载器(classloader) + 执行引擎(execution engine) + 运行时数据区域(runtime data area) PC寄存器...

阅读(20)评论(0)赞 (0)

Java

JVM 一套卷,助你快速掌握优化法则

14

邓龙华 发布于 2019-02-14

一:虚拟机内存图解 JAVA 程序运行与虚拟机之上,运行时需要内存空间。虚拟机执行 JAVA 程序的过程中会把它管理的内存划分为不同的数据区域方便管理。 虚拟机管理内存数据区域划分如下图: 数据区域分类: 方法区: (Method Area) 虚拟机栈 : (VM Stack) ...

阅读(17)评论(0)赞 (0)

Spring

记一次Spring boot 和Vue前后端分离的入门培训

14

xiaoli.wang 发布于 2019-02-13

由于公司之前是写C#的,现在要转 Java分布式 + vue,所以进行一次前后端的简单培训。 前端工具和环境: Node.js V10.15.0 Vue.js V2.5.21 yarn: V1.13.0 IDE:VScode 后端工具和环境: Maven: 3.52 jdk: 1...

阅读(18)评论(0)赞 (0)

Java

翻译 | 理解Java中的内存泄漏

14

likai 发布于 2019-02-11

Java 的其中一个核心特点是经由内置的垃圾回收机制(GC)下的自动化内存管理。GC 默默地处理着内存分配和释放工作因此能够处理大部分内存泄漏问题。 虽然 GC 能够有效地理一大部分内存,但他不保证能处理所有内存泄漏情况。GC 十分智能,但并不完美。即使是在谨慎的程序员所开发的应...

阅读(23)评论(0)赞 (0)

Java

看完这篇文章你还敢说你懂JVM吗?

13

likai 发布于 2019-01-30

引言 在一些物理内存为8g的服务器上,主要运行一个Java服务,系统内存分配如下:Java服务的JVM堆大小设置为6g,一个监控进程占用大约 600m,Linux自身使用大约800m。从表面上,物理内存应该是足够使用的;但实际运行的情况是,会发生大量使用SWAP(说明物理内存不够...

阅读(25)评论(0)赞 (0)

Java

(JVM 笔记)Java虚拟机:Java 内存管理

2

xubiao.zhuang 发布于 2019-01-28

程序计数器(Program Counter Register)是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。 Java 虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,在任何一个确定的时刻,一个处理器都只会执行一条线程中的指令。 为了线...

阅读(25)评论(0)赞 (0)

Java

备战金三银四:最新百度、美团、京东java开发岗面试题及面试题专题(含答案)分享!

4

xiaoli.wang 发布于 2019-01-26

前言 年后又是招聘季金三银四来了,每年这个季节里都会有很多互联网企业开出高薪招兵买马,同时也会有成千上万的Java程序员开始看机会找工作跳槽,找工作就肯定会涉及到面试,面对各家公司的风格迥异HR或者面试官。在这分享百度,美团,京东面试的最新面试题,以及文末准备的互联网Java架构...

阅读(45)评论(0)赞 (0)

Java

深入理解JVM——(一)JVM的内存区域划分

3

puefu.he 发布于 2019-01-20

​ 说到Java内存区域,可能很多人第一反应是“堆栈”。首先堆栈不是一个概念,而是两个概念,堆和栈是两块不同的内存区域,简单理解的话, 堆是用来存放对象而栈是用来执行程序的 。其次,堆内存和栈内存的这种划分方式比较粗糙,这种划分方式只能说明大多数程序员最关注的、与对象内存分配关系...

阅读(49)评论(0)赞 (0)

Java

从计算机的角度理解 volatile 关键字

7

xiaoli.he 发布于 2019-01-20

极简计算机发展史 我们知道,计算机CPU和内存的交互是最频繁的,内存是我们的高速缓存区。而刚开始用户磁盘和CPU进行交互,CPU运转速度越来越快,磁盘远远跟不上CPU的读写速度,才设计了内存,但是随着CPU的发展,内存的读写速度也远远跟不上CPU的读写速度,因此,为了解决这一矛盾...

阅读(53)评论(0)赞 (0)

Java

Java 虚拟机经典六问

4

xiaoli.he 发布于 2019-01-18

大家好,我是郑雨迪。很荣幸,我开设的 《深入拆解 Java 虚拟机》 专栏得到了大家的青睐,有了 20000+ 的订阅。很显然,现在越来越多的程序员意识到了 Java 虚拟机的重要性,渴望去了解底层,迫切想通过系统性的学习深入 Java 虚拟机,达到“知其然且知其所以然”的目的。...

阅读(42)评论(0)赞 (0)

Java

阿里巴巴面经记分享

xiaoli.he 发布于 2019-01-17

本文只对面试过程分享,至于简历编写、具体重点知识复习等不做讨论 一、面试情况 笔者一共经历了4轮面试,其中: 一面(电话技术面) 二面(电话技术面) 三面(视频技术面) 四面 (技术总监+HR交叉视频面) 阿里的流程相对而言较慢,需要足够的耐心才行! 二、面试题 部分已经遗忘,请...

阅读(53)评论(0)赞 (0)

Java

为年后跳槽准备的133 道 Java 面试题及答案

5

changyuan.xu 发布于 2019-01-17

为年后跳槽准备的133 道 Java 面试题及答案 Java 面试随着时间的改变而改变。在过去的日子里,当你知道 String 和 StringBuilder 的区别就能让你直接进入第二轮面试,但是现在问题变得越来越高级,面试官问的问题也更深入。 在我初入职场的时候,类似于 Ve...

阅读(65)评论(0)赞 (0)

Java

在Java虚拟机中,字符串常量到底存放在哪

4

xiaoli.wang 发布于 2019-01-15

前阵子和朋友讨论一个问题: 字符串常量归常量池管理,那比如 String str = "abc"; "abc"这个对象是放在内存中的哪个位置,是字符串常量池中还是堆? ”这句代码的abc当然在常量池中,只有new String("...

阅读(34)评论(0)赞 (0)

Java

JVM(二)Java虚拟机组成详解

dulong 发布于 2019-01-13

导读:详细而深入的总结,是对知识“豁然开朗”之后的“刻骨铭心”,想忘记都难。 Java虚拟机(Java Virtual Machine)下文简称jvm,上一篇我们对jvm有了大体的认识,进入本文之后我们将具体而详细的介绍jvm的方方面面,而本文主要讲的是jvm的组成,了解了它,就...

阅读(34)评论(0)赞 (0)

Java

深入了解 Java 的 volatile 关键字

2

hanze 发布于 2019-01-10

说 volatile 之前,先来聊聊 Java 的内存模型。 在 Java 内存模型中,规定了所有的变量都是存储在主内存当中,而每个线程都有属于自己的工作内存。线程的工作内存保存了被该内存使用到的变量的主内存副本拷贝,线程对变量的所有操作(读取,赋值等)都必须在工作内存中进行,而...

阅读(37)评论(0)赞 (0)

Java

HashMap?面试?我是谁?我在哪

4

changyuan.xu 发布于 2019-01-09

现在是晚上11点了,学校屠猪馆的自习室因为太晚要关闭了。勤奋且疲惫的小鲁班也从屠猪馆出来了,正准备回宿舍洗洗睡,由于自习室位置比较偏僻所以是接收不到手机网络信号的,因此小鲁班从兜里掏出手机的时候,信息可真是炸了呀。小鲁班心想,微信群平时都没什么人聊天,今晚肯定是发生了什么大事。仔...

阅读(41)评论(0)赞 (0)

编程技术

Java架构师面试题,试了才知道行不行

2

xirruiqiang 发布于 2019-01-09

前言 既然要成为Java架构师,首先你要是一个高级Java攻城尸,熟练使用各种框架,并知道它们实现的原理。jvm虚拟机原理、调优,懂得jvm能让你写出性能更好的代码; 池技术,什么对象池,连接池,线程池…:;Java反射技术,写框架必备的技术,但是有严重的性能问题,替...

阅读(61)评论(0)赞 (0)