2008-11-13 57 views
50

是否有可能使用新的獨立jvm進程在java中執行「C類」分支?Java - 類C叉?

怎麼樣?

+1

也許你可以進入你要完成什麼更詳細?如前所述,您可以exec()另一個進程,它可能是JVM的另一個實例,但這不會給您與C中的fork()相同的狀態共享。另一方面,您可以運行線程,但是在這裏你可以獲得比fork()更多的共享。 – 2008-11-13 17:56:28

+0

我只是想避免該線程暗含的共享。請注意以下問題:) – sakana 2008-11-14 13:42:18

回答

10

有趣地,我只是在做這個:在運行其他Java程序的Java進程。我用From Runtime.exec() to ProcessBuilder作爲一個堅實的基礎,並且When Runtime.exec() won't作爲一個很好的建議如何吞噬輸出流。

PS:對於那些想知道,我必須做(而不是產生新的線程),由於另一個Java進程是檢查這些過程被中,通常,分別與外殼命令跑的存在。

+2

這些只是指`Runtime.exec()`,這與WAY不同之處在於能夠在`fork()`之後顯式控制子節點。 – ShiDoiSi 2012-10-09 07:51:33

+0

您能否更新答案並修復ProcessBuilder的鏈接? – 2015-06-18 06:18:31