资讯专栏INFORMATION COLUMN

jvm原理

lufficc / 1888人阅读

摘要:在之前,它是一个备受争议的关键字,因为在程序中使用它往往收集器理解和原理分析简称,是后提供的面向大内存区数到数多核系统的收集器,能够实现软停顿目标收集并且具有高吞吐量具有更可预测的停顿时间。

35 个 Java 代码性能优化总结

优化代码可以减小代码的体积,提高代码运行的效率。

从 JVM 内存模型谈线程安全

小白哥带你打通任督二脉

Java使用读写锁替代同步锁

应用情景 前一阵有个做反抄袭检测的小伙伴问了我一个问题。 --- 在多线程里就是有个变量,我需要读取它来判断是否给它写入一些信息。 打算加锁,但是如果读取时候加入readlock,写入时候加入writelock, 这样做可能读写不同步。但是如果一起加lock效果就跟synchr…

Java 线程内存模型, 线程、工作内存、主内存

Java 线程内存模型, 线程、工作内存、主内存

一个事半功倍的 Java 反射库

本文想要介绍的,jOOR(Java Object Oriented Reflection),它是一个对 java.lang.reflect 包的简单封装,使得我们使用起来更加直接和方便。

思维导图学 Java 虚拟机

这篇文章是作者读完深入了解 java 虚拟机的读书笔记,可以作为学习 java 虚拟机的路线。

关于 Java 面试,你应该准备这些知识点

作者的大厂面试经验分享以及面试时应该准备的哪些知识点。

高级java工程师面试必备:jvm知识体系总揽

要面试的赶紧看吧

【Java 高手之路】JVM 源码分析之堆外内存完全解读

概述 广义的堆外内存 说到堆外内存,那大家肯定想到堆内内存,这也是我们大家接触最多的,我们在 jvm 参数里通常设置 - Xmx 来指定我们的堆的最大值,不过这还不是我们理解的 Java 堆,-Xmx 的值是新生代和老生代的和的最大值,我们在 jvm 参数里通常还会加一个参数 - XX:MaxPermSize 来指定持久

详细深入分析 Java ClassLoader 工作机制

申明:本文首发于 详细深入分析 ClassLoader 工作机制 ,如有转载,请务必注明原出处即可,谢谢配合。 详细深入分析 Java ClassLoader 工作机制 什么是 ClassLoader ? 大家都知道,当我们写好一个 Java 程序之后,不是管是 C/S 还是 …

数据库中间件 MyCAT 源码解析 —— 分片结果合并(一)

???关注微信公众号:【芋艿的后端小屋】有福利: RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表 RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址 您对于源码的疑问每条留言都将得到认…

JDK8 并发包一览

《java并发编程系统与模型》已出版,真心希望大家能支持这本书,您的支持就是我最大的动力! AbstractExecutorService: 抽象的执行器。ArrayBlockingQueue: 一个有边界的先进先出的阻塞队列BlockingDeque: 接口描述,阻塞双端队列…

深度解析 Java 8:JDK1.8 AbstractQueuedSynchronizer 的实现分析

Java 中的 FutureTask 作为可异步执行任务并可获取执行结果而被大家所熟知。通常可以使用 future.get() 来获取线程的执行结果,在线程执行结束之前,get 方法会一直阻塞状态,直到 call() 返回,其优点是使用线程异步执行任务的情况下还可以获取到线程的执行结果,但是 FutureTask 的以上功能却是依靠通过一个叫 AbstractQueuedSynchronizer 的类来实现,至少在 JDK 1.5、JDK1.6 版本是这样的(从 1.7 开始 FutureTask 已经被其作者 Doug Lea 修改为不再依赖 AbstractQueuedSynchronizer 实现了,这是 JDK1.7 的变化之一)。

程序员必备利器——Java程序性能分析工具Java VisualVM(Visual GC)

程序员必备利器——Java程序性能分析工具Java VisualVM(Visual GC) VisualVM 是一款免费的集成了多个JDK 命令行工具的可视化工具,它能为您提供强大的分析能力,对 Java 应用程序做性能分析和调优。这些功能包括生成和分析海量数据、跟踪内存泄漏…

浅析JVM(二)运行时数据区

JVM 是 Java Virtual Machine(Java虚拟机)的缩写,它是一种规范,HotSpot VM是其最主流的实现(其他实现),通常我们讨论JVM如果没有特意说明是何种实现,便指的是HotSpot VM。JVM也并非仅支持Java语言,任何可编译为字节码的编程语言能可以运行在JVM上,例如前不久谷歌在 I/O 2017宣布将作为 Android 开发 First-Class 语言的 Kotlin。JVM定义了一些运行时数据区以便执行程序时候所用,一部分数据区在虚拟机启动时创建,在虚拟机退出时销毁,另外一些数据区是针对每个线程的,这些数据区是和线程的生命周期相同,即随着线程的创建而创建销毁而销毁。理解这些区域对于进一步理解JVM和编写并发程序是非常重要的,本文将结合作者自己的理解对各区域做一粗浅的解析,不对之处,望指出,共勉。

Java 线程池的理论与实践

Doug Lea 前段时间公司里有个项目需要进行重构,目标是提高吞吐量和可用性,在这个过程中对原有的线程模型和处理逻辑进行了修改,需要 发现有很多基础的多线程的知识已经模糊不清,如底层线程的运行情况、现有的线程池的策略和逻辑、池中线程的健康状况的监控等,这次重新回顾了一下,其中涉…

计算机程序的思维逻辑 (81) - 并发同步协作工具

我们在 67 节和 68 节实现了线程的一些基本协作机制,那是利用基本的 wait/notify 实现的,我们提到,Java 并发包中有一些专门的同步工具类,本节,我们就来探讨它们。 我们要探讨的工具类包括: 读写锁 ReentrantReadWriteLock 信号量 Semaphore 倒计…

java 性能优化注意的几个细节规则

一些有关代码优化的小细节,一个一个细小的优化点累积起来,对于代码的运行效率绝对是有提升的。

计算机程序的思维逻辑 (80) - 定时任务的那些坑

本节探讨定时任务,定时任务的应用场景是非常多的,比如: 闹钟程序或任务提醒,指定时间叫床或在指定日期提醒还信用卡 监控系统,每隔一段时间采集下系统数据,对异常事件报警 统计系统,一般凌晨一定时间统计昨日的各种数据指标 在 Java 中,有两种方式实现定时任务: 使用 java.uti…

译-Java内存管理白皮书

说明 有关java并发可以看这里:https://yuedu.baidu.com/ebook... 要学习Java或者任意一门技术,我觉得最好的是从官网的资料开始学习。官网所给出的资料总是最权威最知道来…

Java多线程干货系列—(四)volatile关键字| 掘金技术征文

原本地址:Java多线程干货系列—(四)volatile关键字博客地址:http://tengj.top/ 前言 今天介绍下volatile关键字,volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往…

Garbage First G1 收集器 理解和原理分析

Garbage First Collector, 简称 G1 Collector,是 HotspotJDK1.7 后提供的面向大内存 (Heap 区数 G 到数 10G)、多核系统的收集器,能够实现软停顿目标收集并且具有高吞吐量, 具有更可预测的停顿时间。一些基本的垃圾收集的概念和术语可以参考我之前的一篇理解 GC(垃圾回收算法和原理)。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/68395.html

相关文章

  • 学习JVM必看书籍

    学习JVM的相关资料 《深入理解Java虚拟机——JVM高级特性与最佳实践(第2版)》 showImg(https://segmentfault.com/img/bVbsqF5?w=200&h=200); 基于最新JDK1.7,围绕内存管理、执行子系统、程序编译与优化、高效并发等核心主题对JVM进行全面而深入的分析,深刻揭示JVM的工作原理。以实践为导向,通过大量与实际生产环境相结合的案例展示了解...

    shaonbean 评论0 收藏0
  • 从表到里学习JVM实现

    在社会化分工、软件行业细分专业化的趋势下,会真的参与到底层系统实现的人肯定是越来越少(比例上说)。真的会参与到JVM实现的人肯定是少数。 但如果您对JVM是如何实现的有兴趣、充满好奇,却苦于没有足够系统的知识去深入,那么可以参考RednaxelaFX整理的这个书单。 showImg(http://segmentfault.com/img/bVbGzn); 本豆列的脉络是:    1. JV...

    Cristic 评论0 收藏0
  • JVM 的 工作原理,层次结构 以及 GC工作原理

    摘要:执行引擎作用执行字节码,或者执行本地方法运行时数据区其实就是指在运行期间,其对内存空间的划分和分配。 虽是读书笔记,但是如转载请注明出处https://uestc-dpz.github.io..拒绝伸手复制党 JVM Java 虚拟机 Java 虚拟机(Java virtual machine,JVM)是运行 Java 程序必不可少的机制。JVM实现了Java语言最重要的特征:即平台...

    qqlcbb 评论0 收藏0
  • 三年Java后端面试经历

    摘要:前言三年后端开发经验,面的目标岗位是的高级后端开发。面试结束,应该没有后续。 前言 三年Java后端开发经验,面的目标岗位是20k-35k的高级后端Java开发。 第一场,基本裸面,关于曾经的项目部门答的不好,所以还是得好好准备。 某C轮在线旅游公司 笔试 先做半个小时的笔试题,一共六个题目,两道go语言的基础题,一道斐波那契相关,一道数据库行列转置,一道实现一个栈,还有一道是百万计...

    darry 评论0 收藏0
  • (三)从jvm层面了解线程的启动和停止

    摘要:最后我们重点关注与一下实际就是调用平台创建线程的方法来创建线程。线程的中断标识判断了解了方法的作用以后,再回过头来看中这段代码,就很好理解了。 文章简介 这一篇主要围绕线程状态控制相关的操作分析线程的原理,比如线程的中断、线程的通信等,内容比较多,可能会分两篇文章 内容导航 线程的启动的实现原理 线程停止的实现原理分析 为什么中断线程会抛出InterruptedException ...

    mudiyouyou 评论0 收藏0

发表评论

0条评论

lufficc

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<