一个故意消耗内存的java程序MemoryEater
公司提供的测试服务器是vmware的,号称给我6G,
物理内存事实上是按需分配的。 等到真正拿到6G物理内存,黄花菜都凉了。
看到下面的文章,觉得故意用java程序侵占6G内存, 然后把侵占到内存的释放,
用到实际的程序(如Oracle Database),可能是个好办法。
(做个Batch放到计划任务里, 每天早上上班之前执行一下,会不会好很多?)
import java.util.Vector;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader; public class MemoryEater
{
public static void main(String[] args)
{
Vector v = new Vector();
try {
for (int i = 1 ; i < 4096 ;i++) // 4K
{
byte b[] = new byte[1048576]; // 1M
v.add(b);
Thread.sleep(1000);
//Runtime rt = Runtime.getRuntime();
//System.out.println("free memory"+ rt.freeMemory() );
} readConsole();
} catch(Exception e)
{
} } public static void readConsole() throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Enter String");
String s = br.readLine(); }
}
$ java -Xmx1024M MemoryEater
http://alvinalexander.com/blog/post/java/java-program-consume-all-memory-ram-on-computer
一个故意消耗内存的java程序MemoryEater的更多相关文章
- 一个工作三年左右的Java程序员和大家谈谈从业心得
转发链接地址:https://mp.weixin.qq.com/s/SSh9HcA5PgMHv7xiolQkig 貌似这一点适应的行业最广,但是我可以很肯定的说:当你从事web开发一年后,重新找工作时 ...
- 如何能快速的成为一个年薪20万的Java程序员,你都需要具备哪些技术?史上最全的java学习路线!
看好了,绝对不是单纯的初级视频,一个朋友在某机构学习,把每天老师讲课的视频代码和笔记全部整理出来了,需要的抓紧时间联系我! 一级目录截图 其中还包含时下最火的分布式和外服务的技术哦,请看07和08 ...
- 看到一个简单的背单词java程序的设计,收藏下
https://blog.csdn.net/qq_40605167/article/details/81023836
- 为什么Java程序占用的内存比实际分配给它的要多
很多人错误的认为运行Java程序时使用-Xmx和-Xms参数指定的就是程序将会占用的内存,但是这实际上只是Java堆对象将会占用的内存.堆只是影响Java程序占用内存数量的一个因素.要更好的理解你的J ...
- Java程序执行过程及内存机制
本讲将介绍Java代码是如何一步步运行起来的,其中涉及的编译器,类加载器,字节码校验器,解释器和JIT编译器在整个过程中是发挥着怎样的作用.此外还会介绍Java程序所占用的内存是被如何管理的:堆.栈和 ...
- java入门——第一个java程序
来源:https://course.tianmaying.com/java-basic%2Bjava-hello-world# java的基础特征 1 Java是一种大小写敏感的语言 2 程序的文件名 ...
- 转载:java程序员如何拿到2万月薪
作者:匿名用户链接:https://www.zhihu.com/question/39890405/answer/83676977来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请 ...
- Java程序-进程中的"进程"
进程 我们知道程序在磁盘上的时候是静态的,当他被加载到内存的时候,就变成了一个动态的,称为进程,如下图是程序被加载到内存后,在内存中的分布情况如下 此图来自http://blog.csdn. ...
- java拾遗4----一个简单java程序的运行全过程
简单说来,一个java程序的运行需要编辑源码.编译生成class文件.加载class文件.解释或编译运行class中的字节码指令. 下面有一段简单的java源码,通过它来看一下java程序的运行流程: ...
随机推荐
- HDU 4597 Play Game(DFS,区间DP)
Play Game Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others) Total Sub ...
- LightGBM值参数配置
LightGBM 可以使用一个 pairs 的 list 或一个字典来设置参数: 1.Booster提升器的参数: param={'num_class':33, 'boosting_type':'gb ...
- Ubuntu18.04下安装比特币客户端
一.下载有两种安装方式:安装包和源码 二.安装1.通过安装包安装在https://bitcoin.org/en/download下载Windows,Mac OSX,Linux对应的安装包.安装过程比较 ...
- 不登录到MySQL执行SQL语句
mysql -e 不登录到MySQL执行SQL语句 mysql -u root -p -e "SHOW DATABASES"
- spring 返回xml数据
要将对象以xml数据形式返回:参考:https://blog.csdn.net/Pnoter/article/details/52218363 1:创建对象时应该填上xml注解,这样才能将对象转换为x ...
- php计算中英文混合或中文字符串的字数
转载来源链接: http://blog.csdn.net/hueise_h/article/details/22920937 php的strlen和mb_strlen用于统计字符个数.中英文混合的字符 ...
- layer官方演示与讲解(jQuery弹出层插件)
1. 使用layer遇到困难?Fly社区虔诚为您解惑 2. layer 2.0 发布,以独立形式呈现的最后一个版本 3. Fork layer on Github,爱她,就给她加个星啵 当前版本:2. ...
- ssm所需要的pom(jre8、tomcat8、spring4)
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
- 883. Projection Area of 3D Shapes
问题 NxN个格子中,用1x1x1的立方体堆叠,grid[i][j]表示坐标格上堆叠的立方体个数,求三视图面积. Input: [[1,2],[3,4]] Output: 17 Explanation ...
- Python Missing parentheses in call to 'print'
原来是因为Python2.X和Python3.X不兼容. 我安装的是Python3.X,但是我试图运行的却是Python2.X 的代码. 所以上面的语法在python3中是错误的.在python3中, ...