JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) ) 堆区: 1.存储的全部是对象,每个对象都包含一个与之对应的class的信息。(class的目的是得到操作指令)2.jvm只有一个堆区(heap)被所有线程共享,堆中不存放基本类型和对象引用,只存放对象本身 栈区: 1. ...
分类:
其他好文 时间:
2020-01-11 13:23:22
阅读次数:
55
JVM 内存初学 (堆(heap)、栈(stack)和方法区(method) ) 1.堆:存储对象(实例),被所有线程共享 2.栈:存储对象引用和基本数据类型,每个线程都有一个线程栈 3.方法区:也叫静态区,存储class信息和static变量,被所有线程共享 public class Test { ...
分类:
其他好文 时间:
2020-01-11 11:50:54
阅读次数:
72
目录 JVM 线程内存共享区 堆 heap (线程共享) 新生代的划分 Eden/FromSurvivor/To Survivor FromSurvivor To Survivor 新生代Minor GC 回收过程 老年代区域 清理算法:标记清除法 方法区、永久代(线程共享) 运行时常量池 线程内存 ...
分类:
其他好文 时间:
2020-01-09 18:57:51
阅读次数:
102
2019年终总结&小半年流媒体服务器开发经验总结 [toc] 时间转瞬即逝,转眼间19年已经过去了,人愈来愈来老,却不见人心和物质的提升,期望2020年能有一个崭新的自己。 今年因为发展原因,从嵌入式跳槽做互联网后端了,干了一年突然转行,自己也很纠结这么做对不对,但归根结底我只是选择了做自己想做的事 ...
分类:
其他好文 时间:
2020-01-07 01:14:46
阅读次数:
148
①维护堆的性质,max_heapify通过让A[i]的值在最大堆中“逐级下降”,从而使得下标i为根节点的子树重新遵循最大堆性质。 void max_heapify(int A[], int i) { int left = 2 * i; int right = 2 * i + 1; int large ...
分类:
编程语言 时间:
2020-01-07 01:02:59
阅读次数:
89
在单片机中由于内存资源紧张,不可能给每个任务分配专有的内存区,尤其是涉及到通讯模块的程序,对内存的使用更是敏感。为此开发一个简单的内存管理库,对以后的开发还是有着不小的帮助的。 功能实现:内存动态分配、内存动态释放、内存碎片回收 heap.c // 内存划分:申请的一块内存分为两部分,一部分用于存储 ...
分类:
其他好文 时间:
2020-01-06 17:44:55
阅读次数:
79
堆排序(Heap Sort)是指利用堆这种数据结构所设计的一种排序算法。因此,学习堆排序之前,有必要了解堆! 我们知道,堆分为"最大堆"和"最小堆"。最大堆通常被用来进行"升序"排序,而最小堆通常被用来进行"降序"排序。鉴于最大堆和最小堆是对称关系,理解其中一种即可。本文将对最大堆实现的升序排序进行 ...
分类:
编程语言 时间:
2020-01-04 22:29:55
阅读次数:
93
/* * java运行内存: * 堆(heap):存储的全是对象,每个对象都包含一个与之对应的class信息 * 只有一个heap,被所有线程共享,heap中不存放基本数据类型和对象引用,只放对象本身 * 栈:每个线程都有属于自己的栈(用户态栈),栈中保存基本数据类型的对象和自定义对象的引用,这个引 ...
分类:
编程语言 时间:
2020-01-04 12:15:42
阅读次数:
82
问题: 测试的某个产品登陆之后有个引用外部站点js的请求半天都无法返回: https://cdn.heapanalytics.com/js/heap-3497400264.js 导致网页一直在打转,Selenium的driver也无法对页面进行下一步的操作。 这个js当时在美国的机器上可以马上返回, ...
分类:
Web程序 时间:
2020-01-03 14:13:26
阅读次数:
104
JVM内存结构 Java内存模型是指Java虚拟机的内存模型,我们来看下Java内存模型的图片: VM内存模型主要分为三块:Java 堆内存(Heap)、方法区(Non-Heap)、JMV栈(JVM Stack)、本地方法栈(Native Method Stacks)、程序计数器(Program C ...
分类:
其他好文 时间:
2019-12-31 23:34:36
阅读次数:
102