Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java系统进程侦听器_Java_Process_Interface_Listener_System - Fatal编程技术网

Java系统进程侦听器

Java系统进程侦听器,java,process,interface,listener,system,Java,Process,Interface,Listener,System,有没有什么方法可以让我得到一个系统进程并聆听它,这样我就可以了解它在做什么?我正在寻找的一个例子是: RunningProcess proc = new RunningProcess("notepad.exe"); ProcListener procListener = new ProcListener(proc); 侦听器类示例: public class ProcListener implements ProcessListener { public ProcListener(.

有没有什么方法可以让我得到一个系统进程并聆听它,这样我就可以了解它在做什么?我正在寻找的一个例子是:

RunningProcess proc = new RunningProcess("notepad.exe");
ProcListener procListener = new ProcListener(proc);
侦听器类示例:

public class ProcListener implements ProcessListener {

    public ProcListener(...) {

    }

    @Override 
    public void started() {

    }

    @Override 
    public void terminated() {

    }

    @Override 
    public void ioOperation(IOoperation iop){

    }

}

有这样的事吗?我还没有找到。

如果您只想在其他程序启动或终止时运行jar,我建议使用。虽然这不是Java的方式,但它可以在某些进程启动/终止时启动程序或批处理文件,并且可以使用批处理文件执行jar。安装后,可能需要先在“选项”中更改语言。该软件简单易用

我认为终止应该是可以做到的,方法是在自己的线程中等待来自进程的返回值。IO应该可以,但只有通过监视流才能使用std输入和输出(除非您使用本机代码和JNI或JNA)。我的目的是监听正在运行的进程。如果进程还没有运行,监听器将等待它运行并通知“开始”。???当你告诉它开始时,它就会开始,不早不晚。我的意图不是创建流程或与流程交互,而是倾听它们。Process类(示例)创建运行进程的系统的对象,而不是新进程,然后启动它或终止它或任何与进程相关的操作。但是如果我创建了一个新的进程并运行它,ProcessListener将是相同的。那么您可能是SOL,不应该使用Java来实现这一点。Java被构建为尽可能不依赖操作系统,因此对于这类事情来说是一个非常糟糕的工具。你所要做的是需要一种能让操作系统非常舒适的语言。看看C#是否适用于Windows平台,或者C/C++是否适用于Windows平台或其他任何平台。如果您必须使用Java,那么您需要使用JNI或JNA或其他实用工具来超越核心Java。