- 浏览: 1494452 次
- 性别:
- 来自: 大连
文章分类
- 全部博客 (460)
- java (148)
- javascript (34)
- Flex文章 (4)
- css+div (2)
- ajax (6)
- extjs (11)
- 人生感悟 (9)
- struts2.0 (6)
- IT之路,生活 (15)
- hibernate (6)
- struts1 (1)
- spring (5)
- j2ee错误 (3)
- Dwr (5)
- Linux (33)
- C++ (3)
- SWT Win32 (2)
- EJB (1)
- JPA (4)
- C语言和LinuxC (7)
- SQL (13)
- 项目经理 (6)
- db2 (2)
- java数据结构 (2)
- 网页播放器flv (1)
- 数据库 (24)
- 用户体验设计学习 (2)
- 网络电话 (5)
- 军事理论 (4)
- android (3)
- oracle (18)
- oracle ebs form (11)
- oracle ebs oaf (4)
- erp (20)
- DBA (9)
- java中URL 的编码和解码函数 (1)
- 铁血丹心 (1)
- excel 单元格格式不能立即生效 (1)
- Java调用bat文件 (1)
- 如何把本地outlook中的邮件上传到网络邮箱中 (1)
- java 报表 打印 (1)
- 创建dblink (1)
- 图标前台框架 (1)
- vnc (1)
- FORM (1)
- MYSQL (1)
最新评论
-
July01:
推荐用StratoIO打印控件,支持网页、URL、图片、PD、 ...
web打印不显示页眉页脚 -
July01:
推荐用StratoIO打印控件,浏览器和系统的兼容性都很好,而 ...
Javascript网页打印大全 -
hardyer:
大哥写的很实在,受教了,提前祝你元旦快乐!
黎活明给程序员的忠告 -
cxysilahi:
请问WIN7 64位,调用报错Exception in thr ...
JNative的初步使用 -
action1949:
好东西,解决问题
JFreeChart乱码解决方法
除了扩大java虚拟机内存之外,我们还需要对自己的程序进行优化,
1、那就是让自己编写的程序符合垃圾回收的机制,
2、然后就是手动的调用System.gc();
下面分几点符合gc的条件。
StringBuffer sb = new StringBuffer("hello");
System.
out.println(sb);
sb=null;
StringBuffer sb1 = new StringBuffer("hello");
(3) 方法内创建的对象:所创建的局部变量仅在该方法的作用期间内存在。一旦该方法返回,在这个方法内创建的对象就符合垃圾收集条件。有一种明显的例外情况,就是方法的返回对象。 public static void main(String[] args) { 返回的是对象,而且这个对象还在以后的程序中要用,所以不会释放。 (4) 隔离引用:这种情况中,被回收的对象仍具有引用,这种情况称作隔离岛。若存在这两个实例,他们互相引用,并且这两个对象的所有其他引用都删除,其他任何线程无法访问这两个对象中的任意一个。也可以符合垃圾回收条件。 public class Island {
(2) 重新为引用变量赋值:可以通过设置引用变量引用另一个对象来解除该引用变量与一个对象间的引用关系。
StringBuffer sb2 = new StringBuffer("goodbye");
System.out.println(sb1);
sb1=sb2;//此时"hello"符合回收条件
Date d = getDate();
System.out.println("d = " + d);
}
private static Date getDate() {
Date d2 = new Date();
StringBuffer now = new StringBuffer(d2.toString());
System.out.println(now);
return d2;
}
Island i;
public static void main(String[] args) {
Island i2 = new Island();
Island i3 = new Island();
Island i4 = new Island();
i2.i=i3;
i3.i=i4;
i4.i=i2;
i2=null;
i3=null;
i4=null;
}
}
发表评论
-
Oracle Developer10G 安装
2020-09-09 18:03 394oracle 客户端也要删除,以前的oracle产品 ... -
打开Eclipse时出现"The Eclipse executable launcher was unable to locate its companion
2018-06-05 15:06 9828打开Eclipse时出现"The Eclipse ... -
J2EE通过tomcat部署的两种方式
2017-09-12 09:01 712转载:http://blog.csdn.net/psp000 ... -
Linux安装Tomcat7
2016-03-30 15:01 910http://blog.sina.com.cn/s/blog ... -
java支持跨平台获取cpuid、主板id、硬盘id、mac地址 (兼容windows、Linux)(转)
2015-11-17 22:10 1663http://blog.csdn.net/flyingclo ... -
栋哥涕啐茆
2015-10-27 10:49 795栋哥涕啐茆 -
Eclipse快捷键 10个最有用的快捷键
2015-10-27 10:18 825Eclipse中10个最有用的快捷键组合 一个Eclip ... -
java上传头像图像剪切
2015-04-02 20:19 1215java上传头像图像剪切 JQUERY 图片上传裁切 -
创建dblink
2014-12-11 20:01 719CREATE public database link ... -
Bitnami Redmine 安装笔记
2014-12-10 11:28 1686http://atian25.iteye.com/blog/ ... -
利用workflow发送类似数据报表内容的通知页面
2014-11-21 15:03 850利用workflow发送类似数据报表内容的通知页面 ... -
excel科学技术法问题
2014-11-12 13:50 8751.使用导入外部数据的方法2.并且在第三步的时候选择文本,需要 ... -
java.lang.IllegalAccessError
2014-09-29 11:05 1217java.lang.IllegalAccessError: ... -
java如何获取文件编码格式
2014-04-11 11:28 102771:简单判断是UTF-8或不是UTF-8,因为一般除了UTF ... -
JAVA中使用FTPClient上传下载
2013-12-08 13:35 1957方法一:这种方法网上有许多 可以用下面的方式,但是支持批量 ... -
在Java中获取环境变量
2013-11-11 11:18 1476package cy.cn.test; import ... -
ORACLE性能调整笔记
2013-11-05 18:39 0一 关于statspack中等待事件的一些解释 ... -
EBS DBA指南笔记1
2013-11-05 18:35 1943时光飞逝,不从事EBS DBA转眼已有两年多。很还念那段学习 ... -
用html代码在word中插入分页符和页面设置
2013-11-05 17:11 5382<span lang=EN-US style=&quo ... -
OpenJWeb新增二维码图片生成功能
2013-11-05 09:02 1318在开发进销存软件的时 ...
相关推荐
内存释放工具 内存释放工具,加快系统运行
内存释放工具是计算机系统优化的一种实用程序,主要目的是回收计算机中不再使用的内存资源,提高系统运行效率。在现代操作系统中,内存管理是一项复杂且至关重要的任务。当程序运行时,它们会占用一定的内存,但有...
"java管理windows系统内存_java释放内存缓存_java获得CPU使用率_系统内存_硬盘_进程源代码" 在Windows操作系统中,内存管理是一个非常重要的方面。Windows实现按需调页的虚拟内存机制,使得应用程序可以使用超过...
### Java内存泄漏解决方案详解 #### 一、Java内存泄漏概述 在Java开发过程中,经常会遇到内存泄漏的问题,尤其是在长时间运行的应用程序中更为常见。本文将详细介绍如何解决Java内存泄漏问题,帮助开发者更好地...
内存工具内存释放工具内存释放工具工具内存释放工具内存释放工具
Java内存模型是Java虚拟机规范中定义的一部分,它规定了Java程序中变量的读写行为,以及线程之间的交互规则。理解Java内存模型对于编写正确、高效的多线程程序至关重要。在Java 5之前,Java内存模型的描述比较模糊,...
这些变量在函数的栈内存中分配,当超过变量的作用域后,Java 会自动释放掉为变量分配的内存空间,该内存空间可以立刻被另作他用。栈内存的特点是:自动释放、快速分配、空间小。 堆内存用于存放由 new 创建的对象...
### 如何解决Java内存泄漏 #### 1. 背景 Java凭借其垃圾回收机制大大简化了内存管理,使得开发者无需手动管理内存的释放,从而提升了开发效率。然而,这种自动化管理也可能成为一把双刃剑,特别是当开发人员忽视...
Java内存管理是编程中至关重要的一个环节,尤其是对于大型、长时间运行的应用来说,内存泄漏和内存无法回收可能导致系统性能下降,甚至导致系统崩溃。本文将深入探讨Java内存泄露的原理,分析内存无法回收的原因,并...
### Java数组与内存控制 #### 一、Java数组在内存分配方面的知识 ##### 1.1 数组初始化 - **声明数组的时候如何分配内存:** - 在Java中,数组的声明并不直接分配内存,而仅仅是创建了一个数组引用变量。例如: ...
"易语言内存释放"这个主题主要涉及到程序运行过程中动态分配和释放内存的过程。本文将深入探讨易语言中的内存管理,特别是内存释放及其相关的技术。 易语言是中国本土开发的一种编程语言,其设计目标是让编程变得...
Java内存泄漏是一个严重的问题,它会导致程序性能下降,甚至可能导致应用程序崩溃。为了有效地诊断和解决这类问题,开发者需要借助特定的分析工具。本篇将详细探讨Java内存泄漏及其相关的分析工具。 内存泄漏是指...
Java内存分析是Java开发中非常重要的一个环节,它关乎到应用程序的性能和稳定性。"JAVA内存分析 - V1.0.0.zip" 提供了一套工具来帮助开发者深入理解并优化Java应用程序的内存使用情况。这个压缩包包含了两个关键文件...
Java内存泄露检测是Java开发中一个关键的议题,因为它直接影响到程序的稳定性和资源效率。内存泄露是指程序中已分配的内存无法被正确地释放,从而导致系统资源的浪费和可能导致程序性能下降甚至崩溃。 首先,理解...
**垃圾收集(Garbage Collection, GC)**是Java内存管理的重要部分,其目标是自动识别并回收不再使用的对象,释放内存。Java提供多种垃圾收集算法,如标记-清除、复制、标记-整理和分代收集。其中,分代收集将堆内存...
本文将深入探讨Java内存管理机制,包括垃圾回收、内存分配与释放、内存泄漏及其预防措施,以及四种引用类型的特点和应用场景。 首先,Java内存分为堆内存(Heap)和栈内存(Stack)。堆内存主要用于存储对象实例,...
Java内存泄漏分析是一个关键的系统优化任务,尤其是在大型企业级应用中,长期运行的系统可能会因为内存泄漏导致性能下降甚至服务中断。"JAVA内存泄漏分析工具"正是一款用于解决此类问题的专业工具,它能帮助开发者...
Java内存溢出(Out Of Memory,OOM)是Java应用程序运行时常见的问题,它通常发生在程序对内存需求超过了Java虚拟机(JVM)所能提供的可用内存时。本文将深入探讨Java内存溢出的原因、表现以及如何解决。 1. **Java...