我的Java程序通過以下方式創建一個進程:守護進程java進程 - 有沒有這樣的事情?
ProcessBuilder builder = new ProcessBuilder("phantomjs.exe crawl.js");
Process proc = builder.start();
如果Java程序端突然終止時(可能經常發生),則phantomjs過程(這是不是一個Java進程)能活下來,並會有無法終止它。
我想要phantomjs進程在封閉的java進程終止時(無論是否突然)終止。
有沒有辦法將Process
實例定義爲一個「守護進程」對象,當它的超級進程(這是執行上面的代碼的java進程)終止時它會自動終止?
爲什麼不使用[shutdown hooks](https://docs.oracle.com/javase/7/docs/api/java/lang/Runtime.html#addShutdownHook(java.lang.Thread))? –
當進程突然關閉時,關閉鉤子不起作用 – KidCrippler
@GentiSaliu我不認爲javascript標記有誤導性。有人可能會想出一種方法來從phantomjs執行的JavaScript代碼中執行我所需的操作。 – KidCrippler