Volatile与Java内存模型

内存屏障(是一类同步屏障指令,是CPU或编译器在对内存随机访问的操作中的一个同步点,使得此点之前的所有读写操作都执行后才可以开始执行此点之后的操作),避免代码重排序。内存屏障其实就是一种JVM指令,J...
3年前
370

js内存的生命周期介绍

,说明,1、内存分配:当我们申明变量、函数、对象的时候,系统会自动为他们分配内存,2、内存使用:即读写内存,也就是使用变量、函数等,3、内存回收:使用完毕,由垃圾回收机制自动回收不再使用的内存,实例...
4年前
370

java类加载的过程

,说明,当程序主动使用某个类时,如果该类还未被加载到内存中,则系统会通过以下三个步骤对该类进行初始化。,类加载步骤,1、加载:将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区的运行...
4年前
350

糟了,线上服务出现OOM了

,前一段时间,公司同事的一个线上服务OOM的问题,我觉得挺有意思的,在这里跟大家一起分享一下。,我当时其实也参与了一部分问题的定位。,他们有个mq消费者服务,在某一天下午,出现OOM了,导致服务直接挂...
5年前
340

Java 的七种垃圾收集器

用 C 或 C++ 这样的编程语言写一个应用时,需要编写代码来销毁内存中不再需要的对象。当应用程序扩展得越来越复杂时,未使用对象被忽略释放的可能性就越大。这会导致内存泄露,最终内存耗尽,在某个时刻将没...
4年前
310

0xc0000022怎么修复

方法一: 1、把运行内存拔下插一次,有时是运行内存错误造成的,提议换内存插槽。 2、清理一下IE缓存,怕有病毒隐藏在这儿造成的。 3、以金山急救箱为例,全盘扫描一次。 4、以360安全护卫为例,用这款...
5年前
310

洞察 C# 终结队列引发的内存泄漏

C# 程序内存泄漏的诱发因素​有很多,但从顶层原理上来说,就是该销毁的 用户根​ 对象没有被销毁,从而导致内存中意料之外的对象无限堆积,导致内存暴涨,最终崩溃,这其中的一个用户根就是 终结器队列,这一...
5年前
310

我们一起聊聊 Java 内存泄漏

Java内存泄漏一直Java程序中最常见的问题之一,它会导致内存溢出,最终导致程序崩溃。我们可能对内存泄漏很熟悉,但又不是那么熟悉,真的遇到事故的时候,内存泄漏问题排查起来却也没有那么容易。本篇就再次...
5年前
300

聊聊NFS为什么会Hang

昨天有个朋友咨询一个问题,他通过NFS MOUNT了一个分布式文件系统,发现对这个文件系统df的时候经常hang死,他检查了一番系统,发现内存使用率很高,大部分物理内存都被cache占用了。他想通过分...
2年前
290

Go内存分配和逃逸分析-理论篇

大家好,我是阳哥。,今天和大家聊聊Go语言的「内存分配」和「逃逸分析」。,要搞清楚GO的逃逸分析一定要先搞清楚内存分配和堆栈:,内存既可以分配到堆中,也可以分配到栈中。,要搞清楚上面的问题,我们先来聊...
5年前
280

蓝屏代码0x000008e解决方法

开机发生蓝屏不正确代码0x0000008E的根本原因主要是内存有不正确或是软件兼容问题造成的,那麼如何解决蓝屏这个问题?下面共享一下计算机开机发生蓝屏代码0x000008e的处理方法。 1、查验新硬件...
3年前
250

JDK中自带的JVM分析工具

对于分布式架构中的文件服务来说,由于涉及大量的IO流操作,很容易引发JVM的相关异常,尤其是内存溢出的问题;,,在最近的一次版本迭代中,真实的业务处理场景和上述几乎一致,由于在文件服务中添加批量处理的...
5年前
220

如何追踪 JS 对象是否被 GC

在自带垃圾回收的语言中,开发者往往不需要过多地关注内存管理。但是不代表我们可以完全忽略它。因为语言引擎的垃圾回收是有一定的判断规则的,如果我们的变量所引用的内存没有符合这个规则,那么引擎无无法对这些内...
4年前
200

没有mmu可以跑Linux吗?

为什么需要mmu? 我们知道应用程序是不能随意访问内存的,如果让应用程序直接访问物理内存,那么计算机是很危险的,计算机内存的所有内容将被完全暴露出来。所以出现了mmu,mmu是内存管理单元,应用程序访...
2年前
180

Linux 综合性命令及解析

一、top – 实时显示系统运行状态 top 命令的功能是用于实时显示系统运行状态,包含处理器、内存、服务、进程等重要资源信息。运维工程师们常常会把 top 命令比作是 “加强版的 Windows 任...
2年前
180

让我们一起分析 Go 语言逃逸

熟悉 C / C++ 的读者朋友们应该都知道一个进程(应用程序)的虚拟内存空间划分为栈内存区和堆内存区。,栈内存区上对象的内存空间是自动分配和销毁的,使用者无需关心。但是,堆内存区上对象的内存空间是需...
4年前
150

Linux 中申请内存的情况分析

一、前言 内存对于系统资源来说,非常重要,内存问题可以导致系统延迟增大,系统内存泄漏,进程被kill等多种严重问题,所以分析进程的内存占用很有必要。本文重点分析了程序中动态申请内存的情况。 注意所有测...
2年前
140

python操作xml的两种方法

,说明,1、DOM会将整个XML读入内存,解析为树,所以占用内存大,解析慢。,它的优点是可以随意遍历树的节点。,2、SAX是一种流模式,边读边分析,占用内存小,分析快,缺点是需要自己处理事件。,一般情...
5年前
130

JavaScript内存泄漏的情况

,1、意外的全局变量。,2、闭包。闭包可以维持函数内局部变量,使其得不到释放。 ,上例定义事件回调时,由于是函数内定义函数,并且内部函数--事件回调引用外部函数,形成了闭包。 ,3、没有清理的DOM元...
4年前
110

深入理解 Linux 上的虚拟内存

虚拟内存可帮助操作系统在不中断的情况下执行其进程。虚拟内存是现代操作系统的基础之一,但通常情况下,除非遇到问题,否则您也可能不会真正考虑它。Linux 发行版要求您在安装期间设置虚拟内存空间(交换分区...
2年前
100