Capisco che sleep()
venga utilizzato per interrompere una discussione per un periodo di tempo specificato. Ho creato degli esempi di rimorchio: nell'esempio 1 ho ottenuto l'output come 1
, 2
, 3
, 4
perché ne ho creato uno solo. Nell'esempio 2, ho creato 2 istanze del thread e ottengo l'output 1
, 1
, 2
, 2
, 3
, 3
, 4
, 4
.Come funziona il metodo sleep() sul dato thread e output?
Perché l'uscita non è 1
, 2
, 3
, 4
per il primo filetto seguita da 1
, 2
, 3
, 4
per la seconda ?.
Esempio 1:
// Using sleep() method
public class Aaa extends Thread{
public void run(){
for(int i=1;i<5;i++){
try{
Thread.sleep(500);
} catch(InterruptedException e){
System.out.println(e);
}
System.out.println(i);
}
}
public static void main(String[] args){
Aaa m1=new Aaa();
m1.start();
}
}
Output:
1
2
3
4
Esempio 2:
// Using sleep() method
public class Aaa extends Thread{
public void run(){
for(int i=1;i<5;i++){
try{
Thread.sleep(500); // sleeps thread
} catch(InterruptedException e){
System.out.println(e);
}
System.out.println(i);
}
}
public static void main(String[] args){
Aaa m1=new Aaa(); // creating one object
Aaa m2=new Aaa(); // creating second object of a class
m1.start(); // calls run method
m2.start();
}
}
Output:
1
1
2
2
3
3
4
4
Prendere in considerazione le convenzioni di denominazione durante la denominazione. –
@Code Entusiasta- Ok, mi dispiace! –
'sleep()' non dà 'output' affatto. Si prega di chiarire il titolo e la domanda. – EJP