Я не совсем уверен, что вы пытаетесь сделать здесь. Мне кажется, что у вас есть решение проблемы, которую лучше всего решить другим способом. Будет ли что-то подобное для достижения вашей конечной цели ?
public class MyApp implements Runnable
{
public MyApp(int foo, String bar)
{
// Set stuff up...
}
@Override
public void run()
{
// Do stuff...
}
public static void main(String[] argv)
{
// Parse command line args...
Thread thread0 = new Thread(new MyApp(foo, bar));
Thread thread1 = new Thread(new MyApp(foo, bar));
thread0.start();
thread1.start();
}
}
Хотя я бы, вероятно, поместил main()
в другой объект в реальном приложении, поскольку управление жизненным циклом является отдельной задачей.