Мне интересно, можно ли запустить процесс и запустить ли он код из текущей программы в Java, аналогичный fork()
в C. Что мне нужно сделать:Запуск процесса из строки кода в Java
public void someMethod() {
doStuff();
}
public static void main(String[] args) {
/* start someMethod() in separate process */
doOtherStuff();
}
Чтобы уточнить, я НЕ хочу запускать someMethod() из отдельного файла, как это делает ProcessBuilder и т. Д., Я хочу, чтобы он был из строки кода, если это имеет смысл.
ПРИМЕЧАНИЕ: это концептуальный вопрос, связанный с Java, то есть, пожалуйста, не спрашивайте: «Почему бы вам не запустить someMethod() в потоке?»
Java использует потоки, а не процессы, поэтому вы можете запускать 'someMethod()' в потоке. Нить лучше, чем процесс практически во всех отношениях (буквально каждый раз), поэтому нет необходимости включать отдельный API процесса. – markspace
«нить лучше процесса» - нет, если я намеренно хочу другое адресное пространство для моей программы :) – user3927950
что вы на самом деле пытаетесь решить здесь? почему вы не можете достичь этого, используя потоки? зачем беспокоиться об адресном пространстве в ** Java **? – BeyelerStudios