learning java ProcessHandle 获取进程相当信息
Process p = rt.exec("notepad.exe");
ProcessHandle ph = p.toHandle();
System.out.println("进程是否运行:" + ph.isAlive());
System.out.println("进程ID:" + ph.pid());
System.out.println("父进程:" + ph.parent());
ProcessHandle.Info info = ph.info();
System.out.println("进程命令:" + info.command());
System.out.println("进程参数:" + info.arguments());
System.out.println("进程启动时间: " + info.startInstant());
System.out.println("进程积计运行时间:" + info.totalCpuDuration());
// 通过CompletetableFuture 在进程结束时运行某个命令
CompletableFuture<ProcessHandle> cf = ph.onExit();
cf.thenRunAsync(() -> System.out.println("程序退出"));
Thread.sleep();
output:
进程是否运行:true
进程ID:7004
父进程:Optional[13192]
进程命令:Optional[C:\Windows\System32\notepad.exe]
进程参数:Optional.empty
进程启动时间: Optional[2019-07-25T07:07:49.393Z]
进程积计运行时间:Optional[PT0.03125S]
程序退出
learning java ProcessHandle 获取进程相当信息的更多相关文章
- java反射--获取成员变量信息
获取成员变量信息 代码及说明: public static void printFieldMessage(Object obj) { //要获取类的信息,首先要获取类的类类型 Class c=obj. ...
- java提取(获取)博客信息(内容)
package com.wbg.my.service; import java.io.*; import java.net.HttpURLConnection; import java.net.URL ...
- JAVA Socket获取服务端信息
1.Socket.getInetAddress(),获取服务端地址. 2.Socket.getPort(),获取服务端端口.
- java HttpClient 获取页面Cookie信息
HttpClient client = new HttpClient(); GetMethod get=new GetMethod("http://www.baidu.com"); ...
- learning java 读写其他进程的数据
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public ...
- Linux崩溃时启动脚本获取进程相关信息
编写test.cpp #include <stdlib.h> #include <stdio.h> #include <exception> #include &l ...
- C# 获取进程或线程的相关信息
信息来自: http://blog.163.com/kunkun0921@126/blog/static/169204332201293023432113/ using System; using S ...
- 获取进程ID,父进程ID,进程完整路径
准备写一个进程管理的功能模块,今天下午先写了扫描获取本机各个进程路径,获取各个进程映像名称,进程完整路径. 要获取进程信息,第一步想到的就是提权,提权代码用过多次了,今天也小结了一下(http://w ...
- 反射01 Class类的使用、动态加载类、类类型说明、获取类的信息
0 Java反射机制 反射(Reflection)是 Java 的高级特性之一,是框架实现的基础. 0.1 定义 Java 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对 ...
随机推荐
- Junit5中实现参数化测试
从Junit5开始,对参数化测试支持进行了大幅度的改进和提升.下面我们就一起来详细看看Junit5参数化测试的方法. 部署和依赖 和Junit4相比,Junit5框架更多在向测试平台演进.其核心组成也 ...
- Springboot打包执行源码解析
一.打包 Springboot打包的时候,需要配置一个maven插件[spring-boot-maven-plugin] <build> <plugins> <plugi ...
- 转 C# 使用openssl
//先用大整数来生成一个1024bit的密钥对 RSA rsa = new RSA(); BigNumber number = OpenSSL.Core.Random.Next(10, 10, 1); ...
- 7 批量查询mget、批量修改bulk
注意:当执行多条数据查询.增删改时,一定要用mget.bulk,提升性能,减少网络传输 mget 回顾:查询单个文档 GET /beauties/my/2 mget 查询多个文档: 不同 ...
- js json数据保存到本地
转自:https://www.cnblogs.com/gamedaybyday/p/9906542.html 使用HTML5来实现本地文件读取和写入 (FileReader读取json文件,File ...
- 了解Django之前
什么是web应用? 通俗地讲,就是通过浏览器访问一个网址,该网站从后台调取数据,然后把相应的界面展示给用户这样的一个过程. 什么是HTTP协议? 即超文本传输协议:规定了客户端与服务端消息传输的格 ...
- Go strconv模块:字符串和基本数据类型之间转换
本文转自Golove博客:http://www.cnblogs.com/golove/p/3262925.html ParseBool 将字符串转换为布尔值 // 它接受真值:1, t, T, TRU ...
- Laravel5.6---搜索查询 自带paginate()分页 get传参
laravel的paginate()分页,如果用post传参,点击第二页时会默认使用get,就会返回原始数据了 需要把查询数据get方式也放到paginate()分页参数中 一.路由 Route::g ...
- Python学习日记(十) 生成器和迭代器
使用dir()我们可以知道这个数据类型的内置函数有什么方法: print(dir(int)) print(dir(bool)) print(dir([])) print(dir({})) print( ...
- python(字典函数/操作)
一.字典操作 1.往字典中添加键值对 dict["key"] = "value" stu = {"} stu["sex"] = & ...