标签:垃圾回收

Java

深入理解JVM(一)JVM内存模型

3

dulong 发布于 2018-06-15

Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域,总共包括以下几个运行时数据区域。 1 、程序计数器(Program Counter Register) 程序计数器是一块较小的内存空间,它的作用: 1.1. 可以看做是当前线程所执行的字节码的信...

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

Java

作为 Java 开发者,你需要了解的堆外内存知识

8

xirruiqiang 发布于 2018-06-15

1. 引言 很久没有遇到堆外内存相关的问题了,五一假期刚结束,便不期而遇,以前也处理过几次这类问题,但都没有总结,觉得是时候总结一下了。 先来看一个 Demo:在 Demo 中分配堆外内存用的是 allocateDirect 方法,但其内部调用的是 DirectByteBuffe...

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

Java

Java虚拟机系列之Java内存结构简介

xiaoli.he 发布于 2018-06-14

本文我们将讲解Java虚拟机中各个区域以及各个区域的作用。 一.程序计数器 什么是程序计数器,有什么作用? 程序技术器是一块比较小的内存区域,主要当做是线程中所执行的字节码的行号指示器,字节码解释器工作时就是通过改变这个计数器的值来选取下一个执行的字节码命令,分支、循环、跳转等基...

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

Spring

为什么说 Java 程序员到了必须掌握 Spring Boot 的时候?

6

darida 发布于 2018-06-13

Spring Boot 2.0 的推出又激起了一阵学习 Spring Boot 热,就单从我个人的博客的访问量大幅增加就可以感受到大家对学习 Spring Boot 的热情,那么在这么多人热衷于学习 Spring Boot 之时,我自己也在思考: Spring Boot 诞生的背...

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

Java

专访Martijn Verburg,关于AdoptOpenJDK与Nestmates

darida 发布于 2018-06-12

InfoQ 在之前发布的一篇新闻中提到, AdoptOpenJDK 项目近期已正式发布其构建平台,以免费软件的形式提供社区版的 OpenJDK 二进制包。 InfoQ 近期对 Martijn Verburg 进行了一次专访,Martijn 是伦敦 Java 社区的领导人、Adop...

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

Java

企业神奇中间件-RPC之RMI(上)

11

hanze 发布于 2018-06-12

说了那么久,到底什么是 RMI (Java Remote Method Invocation)呢?我们来看看维基百科的解释。 In computing, the Java Remote Method Invocation (Java RMI) is a Java API that...

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

Java

Java 引用类型

yanxinchi 发布于 2018-06-10

Java中提供了4个级别的引用:强应用、软引用、弱引用和虚引用 强应用 直接持有对象的实例 特点: 强引用可以直接访问目标对象; 强引用锁指向的对象在任何时候都不会被系统回收。JVM宁愿抛出OOM异常也不回收强引用所指向的对象; 可能导致内存泄露。 软引用(Soft Refere...

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

Spring

初识Spring —— Bean的装配(一)

17

hellas 发布于 2018-06-09

这里的 Bean 当然不是直译过来的意思,关于Bean的定义,维基百科解释的很清楚了: JavaBeans是 Java 中一种特殊的类,可以将多个对象封装到一个对象(bean)中,特点是可序列化,提供无参构造器,提供 getter 方法和 setter 方法访问对象的属性。名称中...

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

Java

如何回答Android面试中java垃圾回收机制

puefu.he 发布于 2018-06-06

回收分为两大块,一为搜索,二为回收。 一,搜索 GC(Garbage Collector)在回收对象前首先必须发现那些无用的对象,如何去发现定位这些无用的对象? 1,引用计数算法(基本弃用) 引用计数器算法是给每个对象设置一个计数器,当有地方引用这个对象的时候,计数器+1,当引用...

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

Java

零基础准备学习编程,应该从哪门语言学起?

7

邓龙华 发布于 2018-06-05

在学习编程之前,我们还是要搞清楚一件事情,那就是你为什么要学习编程? 是想要获得高额的薪水呢?还是自己对编程感兴趣呢?或者两者都是。 目前在国内只要你是个程序员,那么你基本上都能够拿到一份不错的薪资。 对于大多数的转行者来说,学习编程的目的就是想找一份高薪的工作,那么肯定是哪个编...

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

Java

java分布式(类特性)

邓龙华 发布于 2018-06-05

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 java号称是最面向对象的语言。诚然,java克服了很多c++的缺点,同时兼具虚拟机、垃圾回收、跨平台等很多优点,java的确是一门非常优秀的语言。因此,我们有必要好好的说一说...

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

Java

通向架构师的道路之 Tomcat 性能调优

4

likai 发布于 2018-06-05

一、总结前一天的学习 从“第三天”的性能测试一节中,我们得知了决定性能测试的几个重要指标,它们是: 吞吐量 Responsetime Cpuload MemoryUsage 我们也在第三天的学习中对Apache做过了一定的优化,使其最优化上述4大核心指标的读数,那么我们的Apac...

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

Java

支持安卓应用开发的那些顶级编程语言

1

小丁 发布于 2018-06-04

【51CTO.com快译】引言:本文通过向您介绍有关Android应用编程语言的优缺点,以帮助您选择出一种适合于自己应用的语言进行入门学习。 开始学习一种复杂的编程语言往往会让人望而生畏,因为在大多数情况下,您会不知道从何处开始学习,而且在开始之前,您可能已经对该语言满腹怀疑了。...

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

Java

Java网络编程与NIO详解8:浅析mmap和Direct Buffer

18

xirruiqiang 发布于 2018-06-03

本系列文章首发于我的个人博客: https://h2pl.github.io/ 欢迎阅览我的CSDN专栏:Java网络编程和NIO https://blog.csdn.net/column/details/21963.html 部分代码会放在我的的Github: https://...

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

Java

啃碎并发(二):Java线程的生命周期

2

zhuangli 发布于 2018-06-01

当线程被创建并启动以后,它既不是一启动就进入了执行状态,也不是一直处于执行状态。在线程的生命周期中,它要经过 新建(New)、就绪(Runnable)、运行(Running)、阻塞(Blocked)和死亡(Dead)5种状态 。尤其是当线程启动以后,它不可能一直"霸占&...

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

Java

每日一博 | JVM 调优:堆大小设置、回收器选择

小丁 发布于 2018-06-01

堆大小设置 JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物...

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

Java

Java常用命令行工具

1

dulong 发布于 2018-05-31

常用的Java命令行工具的使用梳理,方便以后线上问题排查处理. 示例使用的虚拟机版本(JVM自带命令行工具在bin目录下) [root@localhost ~]# java -version java version "1.8.0_121" Java(TM) ...

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

Java

Netty框架学习之(五):细说数据容器-ByteBuf

2

yeseng 发布于 2018-05-29

1. 简介 字节是网络数据的基本单位。 Java NIO 提供了 ByteBuffer 作为字节容器,但是这个类使用起来过于复杂,而且也有些繁琐。Netty使用了即易于使用又具备良好性能的ByteBuf来替代ByteBuffer。 本文将对ByteBuffer做一个简单的总结。 ...

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