如何获取当前打开的进程列表(Java)?
用户必须了解系统中正在运行的进程,无论是前台还是后台。为此,在 Windows 中我们有一个任务管理器,但在内部它使用一个名为任务列表的程序。任务列表除了为我们提供当前正在运行的进程之外,还为我们提供了详细信息,例如每个进程的进程 ID、会话名称、会话和内存使用情况。
在本文中,我们将了解如何使用 Java 编程语言获取当前打开的进程的列表。
算法
第 1 步 - 创建一个执行 tasklist.exe 的进程
第 2 步 - 创建一个接受流程对象的 BufferedReader 类。
步骤 3 - 使用 while 循环逐行读取流程详细信息并将其打印出来。
语法
要运行位于system32文件夹中的tasklist.exe,我们需要调用进程obj然后执行。
以下是使用该方法执行tasklist.exe程序的语法:
Process process_object = Runtime.getRuntime().exec(System.getenv("windir") + "\system32" + "tasklist.exe");
注意该程序不适用于任何在线编辑器。要获取本地系统中当前打开的进程的列表,您只需在本地编辑器 (Java IDE) 上运行它。
方法:使用tasklist.exe列出所有活动进程
在这种方法中,我们调用一个执行 WIN32 文件夹中的 tasklist.exe 的进程。之后我们使用BufferedReader读取所有活动进程并将其一一打印到控制台。
示例
import java.io.BufferedReader; import java.io.InputStreamReader; public class Main { public static void main(String[] args) { try { // String variable to store process details String processes; // Execute tasklis.exe from win32 Process p = Runtime.getRuntime().exec(System.getenv("windir") + "\system32" + "tasklist.exe"); // Buffered reader to read from the process object BufferedReader br = new BufferedReader(newInputStreamReader(p.getInputStream())); // Prints all processes one by one while ((processes = br.readLine()) != null) { System.out.println(processes); } } catch (Exception e) { e.printStackTrace(); } } }
输出
Image Name PID Session Name Session# Mem Usage ========================= ======== ================ =========== ============ System Idle Process 0 Services 0 8 K System 4 Services 0 9,416 K Registry 140 Services 0 30,420 K smss.exe 604 Services 0 1,076 K csrss.exe 976 Services 0 5,936 K csrss.exe 1112 Console 1 14,144 K winlogon.exe 1164 Console 1 11,704 K wininit.exe 1216 Services 0 6,628 K services.exe 1260 Services 0 9,804 K lsass.exe 1276 Services 0 27,360 K svchost.exe 1396 Services 0 1,388 K fontdrvhost.exe 1428 Console 1 6,608 K ...
在本文中,我们探讨了如何在 Java 中查找当前打开的进程列表。
以上是如何获取当前打开的进程列表(Java)?的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

本文分析了2025年的前四个JavaScript框架(React,Angular,Vue,Susve),比较了它们的性能,可伸缩性和未来前景。 尽管由于强大的社区和生态系统,所有这些都保持占主导地位,但它们的相对人口

本文介绍了SnakeyAml中的CVE-2022-1471漏洞,这是一个允许远程代码执行的关键缺陷。 它详细介绍了如何升级春季启动应用程序到Snakeyaml 1.33或更高版本的降低风险,强调了依赖性更新

Java的类上载涉及使用带有引导,扩展程序和应用程序类负载器的分层系统加载,链接和初始化类。父代授权模型确保首先加载核心类别,从而影响自定义类LOA

本文讨论了使用咖啡因和Guava缓存在Java中实施多层缓存以提高应用程序性能。它涵盖设置,集成和绩效优势,以及配置和驱逐政策管理最佳PRA

Node.js 20通过V8发动机改进可显着提高性能,特别是更快的垃圾收集和I/O。 新功能包括更好的WebSembly支持和精制的调试工具,提高开发人员的生产率和应用速度。

本文使用lambda表达式,流API,方法参考和可选探索将功能编程集成到Java中。 它突出显示了通过简洁性和不变性改善代码可读性和可维护性等好处

本文探讨了在黄瓜步骤之间共享数据的方法,比较方案上下文,全局变量,参数传递和数据结构。 它强调可维护性的最佳实践,包括简洁的上下文使用,描述性
