0

在我的 JSF2.0 网络中,我在后台一次调用一个线程中的一些 shell 脚本。我需要等到所有这些程序都被成功调用。以下是代码片段-

    ExecutorService taskExecutor = Executors.newSingleThreadExecutor();
    for (String script : scriptList){
        taskExecutor.execute(new Runnable() {
             @Override
             public void run() {
                try {
                    log.info("Trying to start script " +script);
                    startScript(program);
                } catch (Exception ex) {
                    log.error("Exception ." + ex.getMessage());
                }
            }
        });
    }
    taskExecutor.shutdown();

    try {
        taskExecutor.awaitTermination(Long.MAX_VALUE, TimeUnit.NANOSECONDS);
    } catch (InterruptedException e) {
        log.error("InterruptedException ." + e.getMessage());
    }
    // Now I can proceed further can call other methods

我从上面的代码运行的 shell 脚本stdout在运行时显示。我想在后台一一调用脚本而不捕获它们的stdout. 我不想等到他们完成。只调用信号。

4

0 回答 0