- 博客(5)
- 问答 (2)
- 收藏
- 关注
转载 Thread的run()与start()的区别
java的线程是通过java.lang.Thread类来实现的。VM启动时会有一个由主方法所定义的线程。可以通过创建Thread的实例来创建新的线程。每个线程都是通过某个特定Thread对象所对应的方法run()来完成其操作的,方法run()称为线程体。通过调用Thread类的start()方法来启动一个线程。在Java当中,线程通常都有五种状态,创建、就绪、运行、阻塞和死亡。 第一是创建状态
2016-04-29 10:59:34 367
转载 java垃圾回收机制
垃圾收集器系统有自己的一套方案来判断哪个内存块是应该被回收的,哪个是不符合要求暂不回收的。垃圾收集器在一个Java程序中的执行是自动的,不能强制执行,即使程序员能明确地判断出有一块内存已经无用了,是应该回收的,程序员也不能强制垃圾收集器回收该内存块。程序员唯一能做的就是通过调用System. gc 方法来"建议"执行垃圾收集器,但其是否可以执行,什么时候执行却都是不可知的。这也是垃圾收集器的最
2016-04-23 14:53:25 385
原创 基于Java内存溢出的解决方法详解
一、内存溢出类型1、java.lang.OutOfMemoryError: PermGen spaceJVM管理两种类型的内存,堆和非堆。堆是给开发人员用的上面说的就是,是在JVM启动时创建;非堆是留给JVM自己用的,用来存放类的信息的。它和堆不同,运行期内GC不会释放空间。如果web app用了大量的第三方jar或者应用有太多的class文件而恰好MaxPermSize设置较小,超出了也
2016-04-22 14:12:50 1932
原创 避免Java内存溢出的注意事项
第一对所有的代码包括页面中的java代码都进行一遍彻底的回顾检查,1.对那些静态(static)的对象要特别留神,特别是类型为Map,List,Set的,静态的变量会一直驻存在内存中,生命周期比较长,不会被垃圾器回收。 2.对于代码,要审查是否生成了大量的冗余的对象,还有一些逻辑业务处理的类, 算法是否过于复杂,调整算法,对于代码认真审查,再仔细重构一遍代码,能提高代码质量,提高程序运行稳定性。
2016-04-22 13:35:00 587
转载 PostgreSQL
一、存储过程结构: Create or replace function 过程名(参数名 参数类型,…..) returns 返回值类型 as $body$ //声明变量 Declare 变量名变量类型;
2016-04-11 10:14:35 428
空空如也
ACCESS for循环 最后输出的答案是多少?
2016-05-30
postgreSQL 数据库 同一张表不同数据的比较
2016-04-15
TA创建的收藏夹 TA关注的收藏夹
TA关注的人