11.2 Runtime 类(血干JAVA系列)

R u n t i m e 类 是 J a v a 中 与 运 行 时 环 境 有 关 的 操 作 类 , 1.利 用 此 类 可 以 取 得 系 统 的 内 存 信 息 ,也 可以2.利用此类产生新的操作系统进程对象。下面具体介绍Runtime类的使用.

11.2.1 认识 Runtime 类

在这里插入图片描述
在这里插入图片描述

11.2.2得到JVM的内存空间信息

【例11.10】观察JVM的内存空间

package jiaqi;

public class demo310_1 {

	public static void main(String[] args) 
	{
		Runtime run = Runtime.getRuntime();
		System.out.println("最大:"+run.maxMemory());
		System.out.println("空闲:"+run.freeMemory());
		String str = "{}{}{}";
		for(int i = 0; i<1000;i++)
		{
			str+=i;
		}
		System.out.println("执行后空闲:"+run.freeMemory());
		run.gc();
		System.out.println("gc后:"+run.freeMemory());
	}
}

在这里插入图片描述

11.2.3 Runtime 类与 Process 类

【例11.11】调用本机可执行程序

package jiaqi;

public class demo310_1 {

	public static void main(String[] args) 
	{
		Runtime run = Runtime.getRuntime();
		try
		{
			run.exec("notepad.exe");
		} 
		catch (Exception e) 
		{
			e.printStackTrace();
		}
	}
}

在这里插入图片描述
程序执行后,一个记事本程序会直接弹出来。
当然,也可以对此程序进行进一步的控制。
例如,可以在5s之后让记事本关闭,那么此时就需要观察exec()方法的返回值类。此方法的返回值为Process,表示一个操作系统的进程类。实际上,如果一个记事本程序启动后,肯定会在操作系统中增加一个进程,此过程可以直接通过Windows的任务管理器查看。

也就是说,直接控制Process就可以进行系统进程的控制,如果现在要想通过程序让此进程消失,则可以直接使用Process类中的以下方法。

public void destroy()

【例11.12】让记事本进程运行5s后消失

package jiaqi;

public class demo310_1 {

	public static void main(String[] args) 
	{
		Runtime run = Runtime.getRuntime();
		Process pro = null;
		try
		{
			pro = run.exec("notepad.exe");
		} 
		catch (Exception e) 
		{
			e.printStackTrace();
		}
		
		try 
		{
			Thread.sleep(5000);
		} 
		catch (Exception e)
		{
			e.printStackTrace();
		}
		
		pro.destroy();
		
	}
}
  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿斯卡码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值