1.JMM Java内存模型 每条线程都有自己的工作内存[Working Memory] 线程的工作内存保存了被该线程使用的变量的主内存副本拷贝 线程对变量的所有线程之间也无法直接访问对方工作内存的变量,线程间变量值的传递均需要通过主内存来完成。 2.java的堆和栈 1)堆 heap:可动态申请的 ...
分类:
编程语言 时间:
2020-03-22 13:37:10
阅读次数:
86
[TOC] Kubernetes简介 1. 什么是Kubernetes Kubernetes (通常称为K8s,K8s是将8个字母“ubernete”替换为“8”的缩写) 是一个以容器为中心的基础架构,可以实现在物理集群或虚拟机集群上调度和运行容器,提供容器自动部署、扩展和管理的开源平台。满足了应用 ...
分类:
Web程序 时间:
2020-03-21 23:39:20
阅读次数:
82
堆排序 堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值总是小于(或者大于)它的父节点,前者称为大顶堆,后者成为小顶堆 解析(大顶堆) 大顶堆即父结点的值总是大于孩子结点 图示(以树为魂,以数组为形) 逻辑表示( ...
分类:
编程语言 时间:
2020-03-21 20:58:40
阅读次数:
82
基本概念 1.操作系统中 heap 和 stack 的区别 1.heap是堆,stack是栈; 2.堆的空间由系统自动分配和释放,栈的空间需要申请和手动释放,所以栈的存取速度快; 3.堆的空间是很大的自由区,栈的空间有限; 4.堆内存主要用于存储实例化对象和jre classes,栈内存存储基本变量 ...
分类:
编程语言 时间:
2020-03-19 13:37:54
阅读次数:
99
分析一下Java中对象创建和初始化过程中涉及的相关概念问题,java中栈(stack)与堆(heap),对象、引用、句柄的概念。@Author:ZJ 06-11-25Blog: [url]http://zhangjunhd.blog.51cto.com/[/url] 1.Java中的数据类型 Jav ...
分类:
编程语言 时间:
2020-03-18 09:39:51
阅读次数:
68
Java 堆内存被划分为新生代和老年代两部分,因此 JVM 通常采用分代回收算法。新生代主要使用复制和标记 清除垃圾回收算法 ,老年代主要使用标记 整理垃圾回收算法。JVM 中针对新生代和年老代分别提供了多种不同的垃圾收集器。 根据线程特点,可以将收集器分为三类: 1. 串行收集器 :Serial ...
分类:
其他好文 时间:
2020-03-14 20:12:46
阅读次数:
69
Java虚拟机的内存可以分为三个区域:栈stack、堆heap、方法区method area。 栈的特点如下: 1. 栈描述的是方法执行的内存模型。每个方法被调用都会创建一个栈帧(存储局部变量、操作数、方法出口等) 2. JVM为每个线程创建一个栈,用于存放该线程执行方法的信息(实际参数、局部变量等 ...
分类:
编程语言 时间:
2020-03-12 20:24:26
阅读次数:
92
堆排序是一种树形选择排序,特点:L[1...n]视为一颗完全二叉树的顺序存储结构,利用完全二叉树中双亲与孩子节点的内在关系,在当前无序区中选择关键字(最大或最小)元素。 大顶堆:L(i)>L(2i) && L(i)>L(2I+1) 小顶堆:L(i)<L(2i) && L(i)<L(2I+1) 例: ...
分类:
编程语言 时间:
2020-03-12 10:03:57
阅读次数:
75
就是秀一波操作辣 1 #include <iostream> 2 using namespace std; 3 const int N=1e3+20; 4 int ans[N],cnt=1; 5 struct heap{ 6 int a[N],n; 7 int top(){return a[1];} ...
分类:
编程语言 时间:
2020-03-10 11:46:39
阅读次数:
52
JVM的内存划分: 方法区:是线程共享的,常量静态变量的JIT(即时编译器)编译后代码也在方法区存放。用来存储已被虚拟机加载的类信息,常量,静态变量,即时编译器编译后的代码等数据。虽然Java虚拟机规范把方法区描述为堆得一个逻辑部分,但是他却有个别名Non-Heap(非堆),目的是为了与Java堆区 ...
分类:
其他好文 时间:
2020-03-09 01:25:48
阅读次数:
56