在jvm中,有关内存可能会出现的两种错误内存溢出和内存泄漏,怎么理解这两种错误: 1、内存泄漏memory leak :是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄漏似乎不会有大的影响,但内存泄漏堆积后的后果就是内存溢出。 2、内存溢出 out of memory :指程序申请内存时, ...
分类:
其他好文 时间:
2019-10-10 15:34:50
阅读次数:
87
基础数据类型(Value type)直接在栈(stack)空间分配,方法的形式参数,直接在栈空间分配,当方法调用完成后从栈空间回收。 引用数据类型,需要用new来创建,既在栈空间分配一个地址空间(reference),又在堆空间分配对象的类变量(object)。 方法的引用参数,在栈空间分配一个地址 ...
分类:
其他好文 时间:
2019-10-10 11:25:38
阅读次数:
151
补充:垃圾回收机制、线程池和ORM缺点 1. 垃圾回收机制不仅有引用计数,还有标记清除和分代回收 1. 引用计数就是内存地址的门牌号,为0时就会回收掉,但是会出现循环引用问题,这种情况下会导致内存泄漏(即不会被用,也不会被清除,一直占着) 2. 标记清除就是有引用就画有向图,如果根对象不能通过边达到 ...
分类:
编程语言 时间:
2019-10-09 23:55:14
阅读次数:
158
本文的内存模型只写虚拟机内存模型,物理机的不予描述。 Java内存模型 在Java中,虚拟机将运行时区域分成6中,如下图: 由于类和方法的信息难以确定,不好设定大小,太大则影响年老代,太小容易内存溢出。 GC不好处理,回收效率低下,调优困难。 在上面的6种类型中,前三种是线程私有的,也就是说里面存放 ...
分类:
编程语言 时间:
2019-10-09 23:53:21
阅读次数:
80
1、面向对象 1 抽象 封装 多态 继承。、 2 跨平台和垃圾回收 源代码-》字节码-》机器码 3 jre java程序运行环境 4 jdk java开发环境,提供了开发工具,编译器等。 2、Object 类的方法 getclass hashcode equals clone tostring no ...
分类:
编程语言 时间:
2019-10-09 19:09:25
阅读次数:
74
一、 (1)选择软件工程的理由:第一点IT领域具有很好的发展前景,是一个朝气蓬勃的行业,前20多年互联网带动了世界各个行业的发展,近几年人工智能、大数据等更是在火热发展中,当然还将会有更好的发展前景,第二点是IT行业对程序开发者的思维能力有较高的要求,通过算法的编写与阅读可以锻炼自己的思维能力,让自 ...
分类:
其他好文 时间:
2019-10-09 12:10:55
阅读次数:
108
方法摘要protected Object clone() 创建并返回此对象的一个副本。boolean equals(Object obj) 指示某个其他对象是否与此对象“相等”。protected void finalize() 当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方 ...
分类:
编程语言 时间:
2019-10-09 00:15:47
阅读次数:
128
托管调试助手“CallbackOnCollectedDelegate”在“D:\XXX\XXX.vshost.exe”中检测到问题。 其他信息: 对“XXX+HookProc::Invoke”类型的已垃圾回收委托进行了回调。这可能会导致应用程序崩溃、损坏和数据丢失。向非托管代码传递委托时,托管应用程 ...
分类:
其他好文 时间:
2019-10-08 19:14:54
阅读次数:
163
垃圾回收机制,简称gc。对堆与方法区的对象进行回收,因为java不像c需要编程人员手动clear,虚拟机通过垃圾回收算法,对堆与方法区的对象进行自动回收处理。 1、引用计数法(jvm没有采用,因为当两个对象相互引用的时候,它们的引用数量永远为1,这样就不会被自动回收,会造成内存泄漏。) 意思就是,对 ...
分类:
其他好文 时间:
2019-10-08 15:53:35
阅读次数:
86
概述文章主要介绍的是PoolArena,PoolChunk,PoolSubpage 三个类的源码PoolArenaPoolArena 是netty 的内存池实现类,通过预先申请一块大的空间,然后对空间进行分配和回收,这样就不用频繁进行系统调用,提高性能。PoolArena 由多个 chunk 组成,... ...
分类:
Web程序 时间:
2019-10-08 14:10:56
阅读次数:
117