一、__del__方法称为"析构方法",用于实现对象被销毁时所需的操作。比如:释放对象占用的资源,例如:打开的文件资源网络连接等。python实现自动的垃圾回收,当对象没有被引用时(引用计数为0),有垃圾回收器调用__del__方法。我们也可以通过del语句删除对象,从而保证调用__del__方法。 ...
分类:
编程语言 时间:
2020-01-13 12:48:17
阅读次数:
104
说到Javascript引擎,很多人既熟悉又陌生。因为虽然每天都在写很多js代码,但对于其原理及运行机制还不是很熟悉。这在系统资源充足的情况下缺陷显露不出来,但在有性能需求或是不同浏览器上需要兼容时可能问题就冒出来了。所以明白引擎的工作原理还是非常有必要的。 那什么算是引擎呢?个人觉得再计算机领域, ...
分类:
编程语言 时间:
2020-01-13 01:12:50
阅读次数:
120
JVM 配置常用参数 堆参数; 回收器参数; 项目中常用配置; 常用组合; 堆参数 回收器参数 如上表所示,目前主要有串行、并行和并发三种,对于大内存的应用而言,串行的性能太低,因此使用到的主要是并行和并发两种。并行和并发 GC 的策略通过 UseParallelGC 和 UseConcMarkSw ...
分类:
其他好文 时间:
2020-01-12 16:39:23
阅读次数:
86
其他收集器的工作范围是整个新生代或者老年代、G1收集器的工作范围是整个Java堆。在使用G1收集器时,它将整个Java堆划分为多个大小相等的独立区域(Region)。虽然也保留了新生代、老年代的概念,但新生代和老年代不再是相互隔离的,他们都是一部分Region(不需要连续)的集合。 ...
分类:
编程语言 时间:
2020-01-12 15:17:29
阅读次数:
91
一、新特性1、lambda表达式(重点)2、函数式接口3、方法引用与构造器引用4、Stream API(重点)5、接口中的默认方法和静态方法6、新时间日期API7、其他新特性二、特点: 1、速度更快(底层数据结构调整、垃圾回收机制做了调整、内存结构做了调整、并行处理) (1)数据结构调整 hashM ...
分类:
其他好文 时间:
2020-01-12 13:39:01
阅读次数:
78
Object的finalize()方法的作用是否于C++的析构函数作用相同? 与C++的析构函数不同,析构函数调用确定,而它的是不确定的 将未被引用的对象放置在F-Queue队列 方法执行随时可能被终止 给予对象最后一次重生的机会 finalize示例 打印结果: First print: jvm. ...
分类:
编程语言 时间:
2020-01-11 20:48:03
阅读次数:
104
Stop-the-World JVM由于要执行GC而停止了应用程序的执行 任何一种GC算法中都会发生 多数GC优化通过减少Stop-the-world发生时间来提高程序性能 Safepoint 分析过程中对象引用关系不会发生变化的点 产生Safepoint的地方: 方法调用; 循环跳转; 异常跳转等 ...
分类:
编程语言 时间:
2020-01-11 20:46:10
阅读次数:
257
Serval Old收集器(-XX:+UseSerialOldGC, 标记-整理算法) 单线程收集,进行垃圾收集时,必须暂停所有工作线程 简单高效,Client模式下默认的老年代收集器 Parallel Old收集器(-XX:+UseParallelOldGC, 标记-整理算法)JDK 6后提供 多 ...
分类:
编程语言 时间:
2020-01-11 20:33:57
阅读次数:
167
备注: 1.超大对象是指对象大小大于Eden+S0 2.新生代采用复制算法进行垃圾回收 3.老年代采用标记整理算法进行垃圾回收 ...
分类:
其他好文 时间:
2020-01-11 18:35:13
阅读次数:
86
博客博客,我来写博客,可能会有错误。奥利给! 守护线程Deamon,它有啥用。 在《java高并发编程详解》是这样说的: 守护线程是一类比较特殊的线程,一般用于处理一些后台工作,比如JDK的垃圾回收线程。在正常情况下,若JVM中没有一个非守护线程,则JVM的进程会退出。(看到这一句,心里what?* ...
分类:
编程语言 时间:
2020-01-11 11:51:13
阅读次数:
91