Q: 什么是内存泄露? A:已经不再使用的内存未能被程序释放,叫内存泄露(memory leak)。 Q: 什么情况下出现内存泄漏? 首先了解一下【垃圾回收】:垃圾回收(英语:Garbage Collection,缩写为GC)在计算器科学中是一种自动的存储器管理机制。当一个计算机上的动态存储器不再需 ...
分类:
其他好文 时间:
2019-08-23 16:19:58
阅读次数:
103
《深入理解 Java 虚拟机》学习 垃圾回收算法 1. 说明 程序计数器,虚拟机栈,本地方法栈三个区域随线程而生,随线程而灭,这几个区域的内存分配和回收都具备确定性 Java 堆和方法区这部分内存的分配和回收都是动态的,垃圾收集器所关注的是这部分内存 新生代和老年代 Java 中的堆是 JVM 所管 ...
分类:
编程语言 时间:
2019-08-23 13:20:24
阅读次数:
83
css 1、盒模型 2、flex 3、css单位 4、css选择器 5、bfc 清除浮动 6、层叠上下文 7、常见页面布局 8、响应式布局 9、css预处理,后处理 10、css3新特性 animation和transiton的相关属性 animate和translate 11、display哪些取... ...
分类:
其他好文 时间:
2019-08-22 01:01:09
阅读次数:
77
常用的两种算法: 引用计数(新版浏览器已弃用,弃用原因:会出现循环引用的情况,无法进行垃圾回收,导致内存泄漏) 标记清除 引用计数法 引用计数,顾名思义一个对象是否有指向它的引用,即看栈中是否有指向要释放的该块堆内存中的地址,如果没有,则该块内存是不需要的,可以进行释放,即垃圾回收 下面引用大佬的一 ...
分类:
编程语言 时间:
2019-08-21 11:18:48
阅读次数:
105
推荐阅读:https://www.cnblogs.com/chengxs/p/10919311.html 在进行老生代的标记清除法回收以前,还会有一个新生代的垃圾回收算法执行。 新生代和老生代 所谓新生代,指的是新产生的对象;老生代就是经历过新生代垃圾回收后还“存活”下来的对象。 新生代的垃圾回收算 ...
分类:
Web程序 时间:
2019-08-21 09:38:57
阅读次数:
171
# TCP协议下的服务端并发,GIL全局解释器锁,死锁,信号量,event事件,线程q## 一、TCP协议下的服务端并发```python'''将不同的功能尽量拆分成不同的函数,拆分出来的功能可以被多个地方使用TCP服务端实现并发 1、将连接循环和通信循环拆分成不同的函数 2、将通信循环做成多线程'... ...
分类:
编程语言 时间:
2019-08-20 00:48:22
阅读次数:
74
内存泄漏和内存溢出的关系 内存泄露:指程序中动态分配内存给一些临时对象,但是对象不会被GC所回收,它始终占用内存。即被分配的对象可达但已无用。 内存溢出:指程序运行过程中无法申请到足够的内存而导致的一种错误。内存溢出通常发生于OLD段或Perm段垃圾回收后,仍然无内存空间容纳新的Java对象的情况。 ...
分类:
其他好文 时间:
2019-08-19 13:08:42
阅读次数:
92
1. 什么是闭包:当内部函数保存到外部时,导致原有的作用域链不被释放,闭包容易造成内存泄露 ~~~javascript function demo(){ //demo()的作用域 demo [{AO}{GO}] 即自己的作用域和全局的作用域 var a; function b(){ //b()的作用 ...
分类:
Web程序 时间:
2019-08-18 19:28:58
阅读次数:
116
JVM GC基本原理与GC算法 微信公众号【Java技术江湖】一位阿里 Java 工程师的技术小站。作者黄小斜,专注 Java 相关技术:SSM、SpringBoot、MySQL、分布式、中间件、集群、Linux、网络、多线程,偶尔讲点Docker、ELK,同时也分享技术干货和学习经验,致力于Jav ...
分类:
其他好文 时间:
2019-08-17 19:56:01
阅读次数:
101
转自https://juejin.im/post/59e6c1f26fb9a0451c397a8c jvm优化必知系列——监控工具 这是jvm优化系列第二篇: jvm优化——垃圾回收 通过上一篇的jvm垃圾回收知识,我们了解了jvm对内存分配以及垃圾回收是怎么来处理的。理论是指导实践的工具,有了理论 ...
分类:
其他好文 时间:
2019-08-17 19:52:49
阅读次数:
93