我想启动多个主方法作为我的程序的客户端。 我应该分别给每个人自己的参数。有没有办法在不使用 bash 脚本的情况下做到这一点?如果没有,如果可能的话,实际开发另一种方法并将参数作为变量传递是一种解决方案吗?
尝试使用线程。您可以创建多个线程并同时启动它们。
http://docs.oracle.com/javase/tutorial/essential/concurrency/
编辑:也许这也有帮助。如何同时运行两个方法
你可以有一个主调度程序,它创建将调用每个客户端主方法的线程。
public class Dispatcher {
public static void main(String args[]) throws InterruptedException {
final Thread thread1 = new Thread(() -> Client1.main(args1));
final Thread thread2 = new Thread(() -> Client2.main(args2));
final Thread thread3 = new Thread(() -> Client3.main(args3));
thread1.start();
thread2.start();
thread3.start();
thread1.join();
thread2.join();
thread3.join();
}
}
你必须弄清楚如何传递参数(args1
、args2
、args3
),这在问题中没有详细说明。
Thread.join() 用于等待 Threads 完成,如果你想做一些以后的操作(例如提示一些东西)。如果您不调用它,它仍然会起作用,因为它们不是守护线程,但在它们完成后您将无法执行操作。
但是,通过更多的上下文,我们可能会为您提供更好的解决方案并避免XY问题。