`

java.lang.Runtime.getRuntime().exec 调用后,等待被调用程序结束后再继续执行

    博客分类:
  • Java
阅读更多
在java中调用操作系统的程序时,可以使用java.lang.Runtime.getRuntime().exec() 来实现,但是这个方法在调用命令后就直接返回当前线程了;程序设计时,有时候需要在等待调用的系统程序完成操作后,当前线程才能做下一步操作,此时可以用类Process的方法waitFor()来实现,它会阻塞当先线程直至调用程序运行结束
java.lang.Process process = java.lang.Runtime.getRuntime().exec("");//执行命令生成cube
try {
   process.waitFor();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
   e.printStackTrace();
}
proc_stat = checkFileSize() ? "1" : "3";


Process的方法waitFor()介绍,取自API文档:
waitFor
public abstract int waitFor()
                     throws InterruptedException导致当前线程等待,如果必要,一直要等到由该 Process 对象表示的进程已经终止。如果已终止该子进程,此方法立即返回。如果没有终止该子进程,调用的线程将被阻塞,直到退出子进程。

返回:
进程的出口值。根据惯例,0 表示正常终止。
抛出:
InterruptedException - 如果当前线程在等待时被另一线程 中断,则停止等待,抛出 InterruptedException。
分享到:
评论

相关推荐

    基于java.lang.Runtime封装的用于简化java调用命令行的工具.zip

    Java语言在执行外部程序或与操作系统交互时,通常会用到`java.lang.Runtime`类。这个类提供了运行时环境的接口,允许Java程序执行系统命令。然而,直接使用`Runtime`类进行命令行操作可能会比较繁琐,需要处理进程的...

    深入研究java.lang.Runtime类.doc

    java.lang.Runtime 类是 Java 语言中一个非常重要的类,它提供了访问当前 Java 应用程序的 Runtime 环境的能力。每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接。 概述: ...

    Java调用应用程序和Dos中的命令

    在Java中,`java.lang.Runtime`类提供了与当前运行时系统交互的方法,其中包括`exec()`方法,该方法允许我们启动一个新的进程并控制其输入和输出流。这对于需要与操作系统交互的任务非常有用。 #### 二、Runtime类...

    Java使用Runtime.exec()给Windows命令提示符做了个外壳,真的很山寨!

    在Java编程中,`Runtime.exec()`方法是一个非常实用的功能,它允许我们执行操作系统级别的命令。这篇博客"Java使用Runtime.exec()给Windows命令提示符做了个外壳,真的很山寨!"探讨了如何利用`Runtime.exec()`来...

    Java调用Python的jar包

    首先,我们需要了解Java如何调用外部程序,这通常通过`java.lang.ProcessBuilder`类或`Runtime.getRuntime().exec()`方法来实现。这两个方法允许Java启动一个新的进程,并执行操作系统命令。因此,我们可以在Java中...

    java调用IE浏览器

    调用浏览器的一个基本方法是通过`Runtime.exec()`方法执行系统命令。例如,如果要打开IE浏览器并加载特定的URL,可以这样做: ```java try { String url = "http://www.example.com"; Runtime.getRuntime().exec...

    JAVA如何调用DOS命令.doc

    在Java中,主要通过`java.lang.Runtime`类和`java.lang.Process`类来实现调用DOS命令的功能。具体步骤如下: 1. **创建Runtime实例**:使用`Runtime.getRuntime()`方法获取当前JVM的`Runtime`对象。 2. **执行命令*...

    java调用本地浏览器的demo

    首先,`Runtime.getRuntime().exec()`方法是Java标准库中用于执行系统命令的常用方式。例如,如果你想在Windows环境下打开默认浏览器,你可以这样写: ```java String url = "http://www.example.com"; Runtime....

    java中调用本地exe文件

    在Java中,可以通过`java.lang.Runtime`类或者`java.lang.ProcessBuilder`类来启动外部程序(exe文件)。这两种方式都可以实现同样的功能,但在实际开发过程中,选择哪一种方式取决于具体需求和个人偏好。 - **...

    java调用window操作系统文本转语音并生成播放文件

    3. 使用`java.lang.Runtime.getRuntime().exec()` 或 `java.lang.ProcessBuilder` 调用DLL,传递文本和输出文件路径作为参数。 4. 在DLL中,调用`ISpVoice::Speak` 方法将文本转换为语音,并使用`ISpVoice::Set...

    java调用Windows应用程序

    1. **Runtime 类**:`java.lang.Runtime` 是一个用于与Java应用程序之外的世界进行交互的类。它提供了运行其他应用程序的方法。 2. **Process 对象**:当通过`Runtime`类执行命令时,会返回一个`Process`对象。这个...

    java执行可执行文件或批处理

    `Runtime.getRuntime()`方法用于获取当前Java应用程序的运行时对象,通过这个对象可以调用`exec()`方法来启动一个新的进程。 #### exec()方法详解 `exec()`方法是`Runtime`类中的一个重要成员,它用于启动一个新...

    JAVA如何调用WINDOWS命令行.doc

    `Runtime.getRuntime()`返回当前应用程序的`Runtime`对象,该对象的`exec()`方法指示Java虚拟机创建一个子进程执行指定的可执行程序,并返回与该子进程对应的`Process`对象实例。`process.waitFor()`则是等待子进程...

    java系统命令调用

    本文将详细介绍如何使用Java Runtime类中的`getRuntime().exec()`方法来调用系统命令,并提供一些实际应用场景的例子。 ### Java Runtime.getRuntime().exec() `java.lang.Runtime`类提供了运行时系统的表示形式,...

    Java调用外部程序命令

    在Java中,调用外部程序主要涉及到三个类:`java.lang.Runtime`、`java.lang.Process` 和 `java.lang.ProcessBuilder`。下面分别介绍这些类的基本用法。 ##### 1. Runtime 类 `Runtime` 类提供了与当前Java应用...

    java 结束word进程

    首先,Java通过`java.lang.ProcessBuilder`和`java.lang.Runtime`类提供了与操作系统交互的能力。这两个类允许我们执行系统命令,包括启动、监控和管理进程。 1. **使用Runtime.exec()方法** `Runtime.getRuntime...

    java Sokcet远程调用shell

    4. `java.lang.Runtime.exec()` 或 `java.lang.ProcessBuilder`:用于执行操作系统命令。 五、安全与优化 1. **安全**:远程调用Shell可能存在安全风险,如命令注入攻击。确保只接受预定义的命令或对输入进行严格...

    用Java调用VC音量控制程序

    `Runtime.getRuntime()`方法用于获取与当前Java应用程序关联的`Runtime`对象,而`exec(String command)`方法则用于执行指定命令或可执行文件。 #### 二、环境配置 为了实现Java程序调用VC创建的程序,首先需要确保...

    jap调用应用程序

    JDK 1.4中引入了`java.lang.Runtime`类,该类提供了一种调用外部命令的机制。 ##### 方法步骤: 1. **获取Runtime实例**:首先通过`Runtime.getRuntime()`方法获取一个`Runtime`实例。 2. **执行命令**:使用`...

Global site tag (gtag.js) - Google Analytics