E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
深入理解Java
JVM内存模型概述
下面就把各个区域的性质总结一下:(说明,下面的只是结论,没有详细的对各个内存块进行详细深入的介绍,有兴趣的可以看一下《
深入理解java
虚拟机》(周志明著)深入研究一下。)
xmh-sxh-1314
·
2023-10-22 03:43
java
深入理解Java
虚拟机-Java内存区域,垃圾回收机制和内存分配策略
本篇主要参考周志明老师的《
深入理解Java
虚拟机》第三版一个Java程序,首先要经过javac编译成.class文件,.class文件是给JVM进行识别的,JVM将.class文件加载到方法区,执行引擎会执行这些字节码
Chin_style
·
2023-10-22 02:33
高级要求
Java
for
Android
java虚拟机
运行时数据区域
内存分配
GC回收
JVM内存结构分析
JVM内存结构分析对于Java程序员来说,内存是由JVM自动管理的,所以一旦出现内存泄漏或溢出的问题,不了解JVM的内存结构和各个内存区域的工作职责,将对解决问题带来很大的麻烦,本文参照周志明的《
深入理解
嘟嘟碰碰叮叮当当
·
2023-10-21 07:49
Android学习笔记(持续更新)
JAVA1.JavaLambda表达式入门2.Java反射机制详解3.
深入理解Java
:注解(Annotation)基本概念4.
深入理解Java
:注解(Annotation)自定义注解入门5.
深入理解Java
写给杭州的歌
·
2023-10-20 22:12
android
android
深入理解Java
CompletableFuture并发编程模型
摘要:本文将介绍Java中的CompletableFuture类,探讨其在并发编程中的应用。我们将详细讨论CompletableFuture的特性、常见用法和最佳实践,帮助开发人员更好地利用这个强大的工具进行异步编程。1.什么是CompletableFuture?CompletableFuture是Java8中引入的一个类,它提供了一种方便、灵活和高效的方法来处理并发任务。CompletableF
JonTang
·
2023-10-20 17:32
Java
java
《
深入理解Java
虚拟机》第三版读书笔记(三)
深入理解Java
虚拟机(3)走进Java文章目录
深入理解Java
虚拟机(3)走进Java1.3Java发展史1991.4Java前传1995.5.23诞生1996.1.23JDK1.01996.4流行1996.5
NewReErWen
·
2023-10-20 15:29
java核心功能实现原理
java
jvm
编程语言
《
深入理解java
虚拟机 第三版》学习笔记二
第4章虚拟机性能监控、故障处理工具4.2基础故障处理工具4.2.1jps:虚拟机进程状况工具可以列出正在运行的虚拟机进程,并显示虚拟机执行主类(MainClass,main()函数所在的类)名称以及这些进程的本地虚拟机唯一ID(LVMID,LocalVirtualMachineIdentifier)。jps命令格式:jps[options][hostid]jps执行样例:jps-l2388D:\D
weixin_41827053
·
2023-10-20 14:27
JVM
java
学习
笔记
JVM(Java Virtual Machine)内存模型篇
前言本文是JVM系列的内存模型篇,参考资料为《
深入理解Java
虚拟机》,本文章将会以HotSpot虚拟机为介绍基础。
夜莺philomel
·
2023-10-19 22:48
jvm
java
开发语言
JVM(Java Virtual Machine)垃圾收集算法篇
前言本文参考《
深入理解Java
虚拟机》,主要介绍GC相关的算法,引用计数法、可达性分析算法、垃圾收集算法(分代收集理论,标记-清除/整理/复制)本系列其他文章链接:JVM(JavaVirtualMachine
夜莺philomel
·
2023-10-19 22:06
jvm
java
算法
深度揭秘Java GC底层,这次让你彻底弄懂她
Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的高墙—《
深入理解Java
虚拟机》我们知道手动管理内存意味着自由、精细化地掌控,但是却极度依赖于开发人员的水平和细心程度。
yes的练级攻略
·
2023-10-19 22:38
JVM
垃圾回收
《
深入理解java
虚拟机》学习笔记
目录前言1.java内存区域与内存溢出异常1.1运行时数据区域1.1.1程序计数器1.1.2java虚拟机栈1.1.3本地地方栈1.1.4堆1.1.5方法区1.1.6运行时常量池1.2OutOfMemoryError异常1.2.1java堆溢出(不断创建对象)1.2.2虚拟机栈和本地方法栈溢出2.垃圾收集器与内存分配策略2.1哪些内存需要回收2.1.1引用计数算法2.1.2可达性分析算法2.2垃圾
码农研究僧
·
2023-10-19 14:31
书籍笔记
java
学习
开发语言
深入理解 Java 虚拟机 学习笔记
深入理解Java
虚拟机学习笔记
深入理解Java
虚拟机学习笔记第二章Java内存区域与内存溢出异常内存区域对象创建对象的内存布局对象访问内存溢出异常常用JVM参数(JavaHotSpotVM)常见异常及可能原因
颯沓如流星
·
2023-10-19 14:29
Java
jvm
java
深入理解Java
虚拟机【笔记】
类加载一个类型从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期将会经历加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载Unloading)七个阶段。其中验证、准备、解析三个部分统称为连接(Linking)。加载、验证、准备、初始化和卸载这五个阶段的顺
丫丁丁
·
2023-10-19 14:59
java
面试
开发语言
《
深入理解Java
虚拟机》笔记
Part1走近Javachapter1走近JavaJava技术体系:如何理解"一次编译,到处运行":Java源码首先被译成字节码,再由不同平台的JVM解析,Java语言在不同平台运行时不需要重新编译,Java虚拟机在执行字节码时,把字节码转换成具体平台中的机器码——Java虚拟机实现了跨平台特性;Part2自动内存管理chapter2Java内存区域与内存溢出异常程序计数器:每个线程都需要一个独立
bazinga_bang
·
2023-10-19 14:28
学习笔记
java
jvm
算法
深入理解Java
虚拟机学习笔记,Java历程与Java虚拟机历程
走进JavaJava小白菜鸡想学
深入理解Java
虚拟机,做了一下笔记,水平有限,大牛切莫笑话Java概述Javajava不仅仅是一门语言,他还是一个由计算机软件和规范组成的技术体系。
OSfung
·
2023-10-19 14:58
java
《
深入理解java
虚拟机 第三版》学习笔记一
第2章Java内存区域与内存溢出异常2.2运行时数据区域Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而一直存在,有些区域则是依赖用户线程的启动和结束而建立和销毁。2.2.1程序计数器-线程私有程序计数器(ProgramCounterRegister)是一块较小的内存空间,它可以看作是当
weixin_41827053
·
2023-10-19 14:26
JVM
java
jvm
深入理解Java
IO流:补充和优化
文章目录简介缓冲流基本原理字节缓冲流:(BufferedInputStream和BufferedOutputStream)字符缓冲流(BufferedWriter和BufferedReader)转换流InputStreamReader:字节流到字符流的桥梁OutputStreamWriter:字符流到字节流的桥梁个人主页:程序员小侯CSDN新晋作者欢迎点赞✍评论⭐收藏✨收录专栏:Java知识介绍✨
程序员 小侯
·
2023-10-19 09:57
Java知识介绍
java
网络
开发语言
学习
深入理解Java
IO流: 包括字节流和字符流的用法、文件读写实践
文章目录我是廖志伟,一名Java开发工程师、Java领域优质创作者、CSDN博客专家、51CTO专家博主、阿里云专家博主、清华大学出版社签约作者、产品软文创造者、技术文章评审老师、问卷调查设计师、个人社区创始人、开源项目贡献者。跑过十五公里、徒步爬过衡山、有过三个月减肥20斤的经历、是个喜欢躺平的狠人。拥有多年一线研发和团队管理经验,研究过主流框架的底层源码(Spring、SpringBoot、S
我是廖志伟
·
2023-10-19 09:20
#
博主活动
java
开发语言
社招两年半10个公司28轮面试面经
我看过的Java相关的书单如下:Java:《Java并发编程的艺术》、《Java并发编程实战》JVM:《
深入理解Java
虚拟机》第三版、《深入Java虚拟机:JVMG1GC的算法与实现》、《新一代垃圾回收器
java晴天过后
·
2023-10-18 15:17
面试
java
开发语言
JVM第七讲:JVM 基础 - Java 内存模型详解
主要转载自Info上
深入理解Java
内存模型,作者程晓明。
程序员 jet_qi
·
2023-10-17 18:26
深入理解java虚拟机
jvm
JMM
Java内存模型
happens-before
指令重排
内存屏障
深入理解JAVA
虚拟机
深入理解JAVA
虚拟机初探JVM的内存结构内存溢出常量池JVM中的对象及引用对象的内存布局垃圾回收机制及算法Class文件结构及深入字节码指令玩转类加载与类加载器初探JVM的内存结构众所周知,虚拟机的内存可以划分为
JankeDeng
·
2023-10-16 06:39
java
java finalize逃脱_finalize(),析构函数(finalization)
对象生存还是死忙(finalize是什么)来自:《
深入理解Java
虚拟机》Object对象里的一个方法对象内存的回收是由GC来做的,GG通过可达性分析来回收未被引用的对象但是并不是非死不可,处于缓行状态如果对象在进行可达性分析后发现没有与
清单控沙牛
·
2023-10-15 15:01
java
finalize逃脱
深入理解java
script作用域——词法作用域和动态作用域
词法作用域编译器的第一个工作阶段叫作分词,就是把由字符组成的字符串分解成词法单元。这个概念是理解词法作用域的基础简单地说,词法作用域就是定义在词法阶段的作用域,是由写代码时将变量和块作用域写在哪里来决定的,因此当词法分析器处理代码时会保持作用域不变。关系无论函数在哪里被调用,也无论它如何被调用,它的词法作用域都只由函数被声明时所处的位置决定functionfoo(a){varb=a*2;funct
踏着阳光
·
2023-10-15 05:07
js
jvm打破砂锅问到底- JVM中对象进入老年代的条件
深入理解Java
虚拟机书中有详尽描述,本文做一下咀嚼.3.8.1对象优先在Eden分配3.8.2大对象直接进入老年代(默认是关闭的)-XX:PretenureSizeThreshold:晋升老年代对象大小
stevenxyy
·
2023-10-15 01:01
jvm
【MySQL 进阶笔记】InnoDB 的事务隔离级别以及死锁
推荐阅读学习笔记《
深入理解Java
虚拟机》学习笔记《后端架构设计》学习笔记《Java基础知识进阶》学习笔记《Nginx学习笔记》学习笔记《前端开发杂记》学习笔记《设计模式学习笔记》学习笔记《DevOps
燕归来兮_
·
2023-10-14 14:27
MySQL
进阶
mysql
lock
隔离级别
isolation
深入理解java
虚拟机
一、走进java二、java自动化内存管理三、垃圾回收机制四、系统监控与调优五、优化六、深入class文件七、虚拟机栈
qin_weilong
·
2023-10-14 02:39
深入Java虚拟机
jvm
JVM 运行时数据区和垃圾收集算法
在《
深入理解Java
虚拟机》一书中,作者将运行时数据区和垃圾收集算法放在开头章节,说明了这两个知识点是进一步学习JVM的基础知识点,相比后续的垃圾收集器和JMM,它也更加的简单。
imonkeyi
·
2023-10-13 01:23
jvm
JVM系列之:你知道为什么要有两个 Survivor吗?关于卡表技术又有多少了解
本文为《深入学习JVM系列》第十三篇文章分代收集理论以下内容来源于《
深入理解Java
虚拟机》一文。
hresh
·
2023-10-12 23:56
深入学习JVM
java
jvm
GC
深入理解Java
类加载机制lqh
深入理解Java
类加载本文目的:
深入理解Java
类加载机制;理解各个类加载器特别是线程上下文加载器;Java虚拟机类加载机制虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化
liu644911337
·
2023-10-11 11:23
java
jvm
开发语言
深入理解Java
线程间通信
合理的使用Java多线程可以更好地利用服务器资源。一般来讲,线程内部有自己私有的线程上下文,互不干扰。但是当我们需要多个线程之间相互协作的时候,就需要我们掌握Java线程的通信方式。本文将介绍Java线程之间的几种通信原理。锁与同步在Java中,锁的概念都是基于对象的,所以我们又经常称它为对象锁。一个锁同一时间只能被一个线程持有。也就是说,一个锁如果被一个线程所持有,那其他线程如果需要得到这个锁,
程序一逸
·
2023-10-11 03:36
java
jvm
开发语言
深入理解Java
的接口和抽象类
对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。一.抽象类在了解抽象类之前,先来了解一下抽象方法。抽象方法是一种特殊的方法:它只有声明,而没有具体的实现。抽象方法的声明格式为:abstractvoidfun();抽象方法必须用abs
java.雅玲
·
2023-10-10 16:19
编程语言
java基础
设计模式
抽象类
java
编程语言
设计模式
接口
Java 与线程
深入理解Java
虚拟机 总结
线程的实现我们知道,线程是比进程更轻量级的调度执行单位,线程的引入可以把一个进程的资源分配和执行调度分开,各个线程既可以共享进程资源(内存地址、文件I/O等),又可以独立调度(线程是CPU调度的基本单位)。主流的操作系统都提供了线程实现,Java语言则提供了在不同硬件和操作系统平台下对线程操作的统一处理,每个已经执行start()且还未结束的java.lang.Thread类的实例就代表了一个线程
好好学习Sun
·
2023-10-10 16:57
深入理解Java
Script中的WeakMap和WeakSet
公众号小册这是我整理的学习资料,非常系统和完善,欢迎一起学习现代JavaScript高级小册深入浅出Dart现代TypeScript高级小册linwu的算法笔记
深入理解Java
Script中的WeakMap
linwu-hi
·
2023-10-10 09:15
javascript
开发语言
ecmascript
reactjs
typescript
css
前端
《现代Javascript高级教程》
深入理解Java
Script中的WeakMap和WeakSet
点击在线阅读,体验更好链接现代JavaScript高级小册链接深入浅出Dart链接现代TypeScript高级小册链接
深入理解Java
Script中的WeakMap和WeakSet在JavaScript
linwu-hi
·
2023-10-10 09:45
javascript
开发语言
ecmascript
深入理解Java
Script事件循环机制
JavaScript作为前端开发的核心语言之一,其事件循环机制是实现异步编程的关键。本文将深入探讨JavaScript事件循环机制,帮助您更好地理解它是如何工作的,以及如何在前端开发中充分利用这一机制。1.什么是事件循环?JavaScript是单线程的,这意味着它一次只能执行一段代码。然而,前端开发中需要处理各种异步任务,例如处理用户输入、发起网络请求、执行定时器等。为了应对这些异步任务,Java
仙鹤童子```
·
2023-10-09 17:54
vue
TypeScript
javascript
开发语言
ecmascript
深入理解java
线程,并分析部分源码
目录线程基础线程和进程进程线程进程和线程的区别进程间通信方式线程的同步互斥上下文切换内核模式和用户模式CPU保护环操作系统层面线程生命周期Java线程详解Java线程的实现方式ThreadRunnableCallablelambda线程创建和启动的流程Java线程的实现原理thread.start()源码分析Java线程→内核线程协程Java线程调度机制协同式调度抢占式调度Java线程调度Java
是菜菜的小严惜哎
·
2023-10-09 11:26
并发编程
java日常分享
java
并发编程
多线程
源码分析
2-2-3-1、
深入理解Java
线程
目录Java线程Java线程的实现方式使用Thread类或继承Thread类实现Runnable接口配合Thread使用有返回值的Callable使用lambdaJava线程实现原理Java线程属于内核级线程内核级线程(KernelLevelThread,KLT)用户级线程(UserLevelThread,ULT)Java线程的调度机制协同式线程调度抢占式线程调度Java线程调度就是抢占式调度Ja
析道者
·
2023-10-09 11:55
进阶
并发编程-JDK
java
线程
内核线程
用户线程
线程状态
并发编程之
深入理解java
线程
并发编程之
深入理解java
线程一、线程基础知识1.1进程和线程1.1.1进程1.1.2线程1.1.3进程与线程的区别1.1.4进程间通信的方式1.2线程的同步互斥1.3上下文切换(Contextswitch
小唐-t
·
2023-10-09 11:55
java
java thread wait参数_
深入理解Java
并发编程之线程Thread
前言现代操作系统在运行一个程序时,会为其创建一个进程。例如,启动一个Java程序,操作系统就会创建一个Java进程。现代操作系统调度的最小单元是线程,也叫轻量级进程(LightWeightProcess),在一个进程里可以创建多个线程,这些线程都拥有各自的计数器、堆栈和局部变量等属性,并且能够访问共享的内存变量。处理器在这些线程上高速切换,让使用者感觉到这些线程在同时执行。Java线程通过调用线程
weixin_39594457
·
2023-10-09 11:24
java
thread
wait参数
java虚拟机线程独占和共享的,
深入理解Java
虚拟机总结-Java内存模型与线程
注:此文是我在读完周志明老师的
深入理解Java
虚拟机之后总结的一篇文章,请阅读此书获取更加详细的信息.在介绍Java内存之前,我们先考虑一下硬件上的结构.我们都知道,一台机器有几个必要的组件,CPU,内存
weixin_39631295
·
2023-10-09 11:24
java虚拟机线程独占和共享的
深入理解Java
线程
笔记大纲笔记目录笔记大纲1.进程与线程1.1内核态与用户态1.2上下文切换2.线程的生命周期2.1操作系统线程生命周期2.2Java语言层面线程生命周期3.Java线程-Thread3.1Java线程实现方式3.1.1继承Thread类,覆盖run()方法。3.2.2实现Runnable接口,覆盖run()方法。3.2.3实现Callable接口,覆盖call()方法。3.2线程的优先级3.3用户
Minor王智
·
2023-10-09 11:51
并发编程
计算机基础
JVM
java
jvm
后端
linux
深入理解Java
虚拟机(周志明第三版)- 第十二章:Java内存模型与线程
系列文章目录第一章:走近Java第二章:Java内存区域与内存溢出异常第三章:Java垃圾收集器与内存分配策略并发处理的广泛应用是Amdahl定律代替摩尔定律成为计算机性能发展源动力的根本原因,也是人类压榨计算机运算能力的最有力武器系列文章目录一、概述二、硬件的效率和一致性三、Java内存模型1、主内存与工作内存2、内存间交互3、对于volatile型变量的特殊规则4、针对long和double变
SKTI_K_Faker
·
2023-10-09 11:49
读书笔记
#
深入理解Java虚拟机
java
开发语言
后端
深入理解Java
线程的等待与唤醒机制(二)
多线程并发是Java语言中非常重要的一块内容,同时,也是Java基础的一个难点。说它重要是因为多线程是日常开发中频繁用到的知识,说它难是因为多线程并发涉及到的知识点非常之多,想要完全掌握Java的并发相关知识并非易事。也正因此,Java并发成了Java面试中最高频的知识点之一。本系列文章将从Java内存模型、volatile关键字、synchronized关键字、ReetrantLock、Atom
我赌一包辣条
·
2023-10-09 11:47
Java进阶
多线程与并发
Condition
await
signal
等待与唤醒
并发编程之
深入理解Java
线程【图灵】
并发编程系列课前思考问题:CAS涉及到用户模式到内核模式的切换吗?为什么说创建Java线程的方式本质上只有一种?Java线程和go语言的协程有什么区别?如何优雅的终止线程?Java线程之间如何通信的,有哪些方式?1.线程基础知识回顾:程序在计算机上是如何执行的?1.1线程和进程进程程序由指令和数据组成,但这些指令要运行,数据要读写,就必须将指令加载至CPU,数据加载至内存。在指令运行过程中还需要用
lang20150928
·
2023-10-09 11:44
基础
java
并发编程四:
深入理解java
线程
文章目录
深入理解java
线程线程基础知识线程的同步互斥上下文切换(Contextswitch)线程的生命周期操作系统层面线程生命周期Java线程的生命周期java线程详解java线程实现方式Java线程实现原理
天黑请闭眼丶风
·
2023-10-09 11:12
并发编程专题
java
并发编程
多线程
深入理解Java
的三种线程等待通知机制
文章目录一、LockSupport概述1、LockSupport是什么2、三种等待唤醒机制3、其他线程等待唤醒方式(了解)二、代码实例分析1、使用wait()+notify()(1)代码实例(2)分析总结2、使用await()+signal()(1)代码实例(2)分析总结3、使用LockSupport(1)代码实例(2)源码分析(3)分析总结一、LockSupport概述1、LockSupport
秃了也弱了。
·
2023-10-09 10:07
java
java
开发语言
关于虚拟机的调参
我是按照《
深入理解Java
虚拟机》中的参数设置的。书中所采用的是Cl
吐泡泡的喵_33ea
·
2023-10-07 20:52
【并发编程学习篇】
深入理解Java
线程
一、操作系统层面线程生命周期操作系统层面的线程生命周期基本上可以用下图这个“五态模型”来描述。这五态分别是:初始状态、可运行状态、运行状态、休眠状态和终止状态。初始状态,指的是线程已经被创建,但是还不允许分配CPU执行。这个状态属于编程语言特有的,不过这里所谓的被创建,仅仅是在编程语言层面被创建,而在操作系统层面,真正的线程还没有创建。可运行状态,指的是线程可以分配CPU执行。在这种状态下,真正的
Java学习者柯十一
·
2023-10-07 17:58
并发编程
java
学习
jvm
深入理解Java
线程
文章目录1.线程基础1.1进程和线程1.1.1进程1.1.2线程1.1.3进程和线程的区别1.1.4进程间通信的方式1.2线程的同步互斥1.2.1概念1.2.2线程同步互斥的控制方法1.3上下文切换1.3.1概念1.3.2查看CPU上下文切换情况1.3.3查看进程/线程的上下文切换情况1.4线程生命周期(操作系统层面)1.5查看进程线程的方法1.5.1**windows**1.5.2**linux
SONNIE在路上
·
2023-10-07 17:28
JUC
java
开发语言
后端
(四)
深入理解Java
并发编程之无锁CAS机制、魔法类Unsafe、原子包Atomic
引言其实在我们上一篇文章阐述Java并发编程中synchronized关键字原理的时候我们曾多次谈到过CAS这个概念,那么它究竟是什么?实际上我们在之前往往为了解决多线程并行执行带来的线程安全问题去利用加锁的机制去将多线程并行执行改变为单线程的串行执行,而实则还有另一种手段能够去避免此类问题的发生,而这种方案和之前我们所分析的synchronized关键字互斥的原理大相径庭,它实则是利用一种自旋的
竹子爱熊猫
·
2023-10-06 16:25
并发编程
多线程
并发编程
java
上一页
3
4
5
6
7
8
9
10
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他