Nel programma seguente, sto chiamando method1 () di SampleClass da due thread. Quindi, in pratica ho creato due oggetti per ogni thread e chiamato il metodo1 (). Ho anche visto lo scenario di chiamare il metodo statico da due thread differenti.
Ora voglio sapere cosa succederà Se uso un solo oggetto per due thread (ho menzionato nel commento) per aver chiamato un metodo (anche il metodo statico). Ho compilato e ma non ho capito alcuna differenza.
Quindi, che è meglio, creare due oggetti per due thread o un oggetto per due thread?
public class MainClass implements Runnable{
public void run() {
try{
//SampleClass.Method1();
SampleClass s1 = new SampleClass();
s1.Method1();
}
catch(Exception e){
e.printStackTrace();
}
}
public static void main(String args[]) {
MainClass m1 = new MainClass();
Thread t1 = new Thread(m1);
t1.setName("first");
t1.start();
MainClass m2 = new MainClass();
Thread t2 = new Thread(m2);//Thread t2 = new Thread(m1);
t2.setName("second");
t2.start();
}
}