Runtime.getRuntime().exec em loop

Pessoal, tenho os códigos abaixo para geração de PDF utilizando wkhtmltopdf, só que quando eu instancio a classe e executo a geração do pdf, gera um loop infinito, executando vários processos, chega a travar a máquina.

Fica executando isso infinitamente:

Process p = Runtime.getRuntime().exec("wkhtmltopdf.exe " + reqURL + "?" + reqQuery + " c:/PDF/" + folderName + "/" + id + "/" + folderName + ".pdf");

Como posso executar uma única vez?

String reqURL = request.getRequestURL().toString();
String reqQuery = "btn=false";
String folderName = "JavaHunter";
GeneratePDF obj = new GeneratePDF();
obj.genrateCmd(reqURL, reqQuery, folderName, "786");   
public class GeneratePDF {

    String logUserId = "0";
    public String path = "c:/PDF";

    public void genrateCmd(String reqURL, String reqQuery, String folderName, String id) {
        try {

            File destFolderPDF = new File("c:/PDF/");
            if (destFolderPDF.exists() == false) {
                destFolderPDF.mkdirs();
            }

            File destFolder = new File("c:/PDF/" + folderName);
            if (destFolder.exists() == false) {
                destFolder.mkdirs();
            }

            File destFolder2 = new File("c:/PDF/" + folderName + "/" + id);
            if (destFolder2.exists() == false) {
                destFolder2.mkdirs();
            }
            Process p = Runtime.getRuntime().exec("wkhtmltopdf.exe " + reqURL + "?" + reqQuery + " c:/PDF/" + folderName + "/" + id + "/" + folderName + ".pdf");

        } catch (IOException e1) {
            System.out.println("Exception::" + e1);
        } catch (Exception e) {
            System.out.println("Exception::" + e);
        }
    }
}

Marcos

Você pode esperar o processo terminar, para executar a próxima iteração do loop.

http://docs.oracle.com/javase/6/docs/api/java/lang/Process.html#waitFor()

Eu preciso somente executar uma vez o processo e depois matá-lo.

como fazer isso? Pode me ajudar?

estou com o mesmo problema