"Ciao, Amigo! Oggi Bilaabo ti parlerà del metodo più interessante che usiamo quando lavoriamo con i thread: sleep . Il metodo sleep è dichiarato come metodo statico della classe Thread , cioè non è collegato a nessun oggetto. Lo scopo di questo metodo consiste nel far «addormentare» il programma per un po'. Ecco come funziona:"

Codice Descrizione
public static void main(String[] args)
{
Thread.sleep(2000);
}

Il programma si avvia.

Quindi si blocca per 2 secondi (2.000 millisecondi)

Poi finisce.

L' unico parametro del metodo sleep è un periodo di tempo. L'intervallo di tempo è specificato in millesimi di secondo (millisecondi). Una volta che un thread chiama questo metodo, si addormenta per il numero specificato di millisecondi.

"Quando è meglio usare questo metodo?"

"Questo metodo è spesso usato nei thread figlio quando devi fare qualcosa regolarmente ma non troppo spesso. Guarda questo esempio:"

Codice Descrizione
public static void main(String[] args)
{
while (true)
{
Thread.sleep(500);
System.out.println("Tick");
}
}
Il programma funzionerà per sempre. La condizione del ciclo è sempre vera.

Ecco cosa fa il programma nel ciclo:
a)  dorme per mezzo secondo
b) visualizza «Tick» sullo schermo

Cioè, alcune azioni verranno eseguite due volte al secondo.

"Ooh, questo è interessante."

"Sono contento che ti piaccia, amico mio!"

"E se volessi eseguire un'azione 100 volte al secondo. Cosa devo fare?"

"Se un'azione deve essere eseguita 100 volte al secondo e ci sono 1000 millisecondi in un secondo, allora l'azione deve essere eseguita una volta ogni 10 millisecondi."

Se la tua azione richiede 2 millisecondi, dovresti aggiungere un ritardo di 8 millisecondi. Presi insieme, verranno eseguiti ogni 10 millisecondi. E funziona fino a 100 volte al secondo.

Se la tua azione è quasi istantanea, aggiungi un ritardo di 10 millisecondi (sospensione). Quindi verrà eseguito circa 100 volte al secondo.

"Grazie, Bilaabo."