logo

Thread.sleep() u Javi s primjerima

Klasa Java Thread pruža dvije varijante metode sleep(). Prva prihvaća samo jedan argument, dok druga varijanta prihvaća dva argumenta. Metoda sleep() koristi se za zaustavljanje rada niti na određeno vrijeme. Vrijeme do kojeg nit ostaje u stanju mirovanja poznato je kao vrijeme mirovanja niti. Nakon isteka vremena mirovanja, nit započinje svoje izvršavanje od mjesta gdje je otišla.

Sintaksa metode sleep():

Slijedi sintaksa metode sleep().

 public static void sleep(long mls) throws InterruptedException public static void sleep(long mls, int n) throws InterruptedException 

Metoda sleep() s jednim parametrom je izvorna metoda, a implementacija izvorne metode se postiže u drugom programskom jeziku. Ostale metode koje imaju dva parametra nisu izvorne metode. To jest, njegova implementacija je postignuta u Javi. Metodama sleep() možemo pristupiti uz pomoć klase Thread, budući da potpis metode sleep() sadrži ključnu riječ static. Domaća, kao i ne-nativna metoda, bacaju označenu iznimku. Stoga ovdje može funkcionirati blok try-catch ili ključna riječ throws.

java spojiti nizove

Metoda Thread.sleep() može se koristiti s bilo kojom niti. To znači da bilo koja druga nit ili glavna nit može pozvati metodu sleep().

Parametri:

Sljedeći su parametri korišteni u metodi sleep().

mls: Vrijeme u milisekundama predstavljeno je parametrom mls. Trajanje za koje će nit spavati zadano je metodom sleep().

n: Prikazuje dodatno vrijeme do kojeg programer ili programer želi da nit bude u stanju mirovanja. Raspon n je od 0 do 999999.

Metoda ne vraća ništa.

css centriranje slike

Važne točke koje treba zapamtiti o metodi Sleep().

Kad god se izvrše metode Thread.sleep(), one uvijek zaustavljaju izvršenje trenutne niti.

Svaki put kada druga nit prekine dok je trenutna nit već u stanju mirovanja, tada se izbacuje InterruptedException.

Ako je sustav koji izvršava niti zauzet, tada je stvarno vrijeme mirovanja niti općenito veće u usporedbi s vremenom proteklim u argumentima. Međutim, ako sustav koji izvršava metodu sleep() ima manje opterećenja, tada je stvarno vrijeme mirovanja niti gotovo jednako vremenu proteklom u argumentu.

cast int u string java

Primjer metode sleep() u Javi: na prilagođenoj niti

Sljedeći primjer pokazuje kako se može koristiti metoda sleep() na prilagođenoj niti.

Naziv datoteke: TestSleepMethod1.java

što je hibernacija u Javi
 class TestSleepMethod1 extends Thread{ public void run(){ for(int i=1;i<5;i++){ 500 the thread will sleep for milli seconds try{thread.sleep(500);}catch(interruptedexception e){system.out.println(e);} system.out.println(i); } public static void main(string args[]){ testsleepmethod1 t1="new" testsleepmethod1(); t2="new" t1.start(); t2.start(); < pre> <p> <strong>Output:</strong> </p> <pre> 1 1 2 2 3 3 4 4 </pre> <p>As you know well that at a time only one thread is executed. If you sleep a thread for the specified time, the thread scheduler picks up another thread and so on.</p> <h3>Example of the sleep() Method in Java : on the main thread</h3> <p> <strong>FileName:</strong> TestSleepMethod2.java</p> <pre> // important import statements import java.lang.Thread; import java.io.*; public class TestSleepMethod2 { // main method public static void main(String argvs[]) { try { for (int j = 0; j <5; 1 1000 j++) { the main thread sleeps for milliseconds, which is sec whenever loop runs thread.sleep(1000); displaying value of variable system.out.println(j); } catch (exception expn) catching exception system.out.println(expn); < pre> <p> <strong>Output:</strong> </p> <pre> 0 1 2 3 4 </pre> <h3>Example of the sleep() Method in Java: When the sleeping time is -ive</h3> <p>The following example throws the exception IllegalArguementException when the time for sleeping is negative.</p> <p> <strong>FileName:</strong> TestSleepMethod3.java</p> <pre> // important import statements import java.lang.Thread; import java.io.*; public class TestSleepMethod3 { // main method public static void main(String argvs[]) { // we can also use throws keyword followed by // exception name for throwing the exception try { for (int j = 0; j <5; j++) { it throws the exception illegalargumentexception as time is -ive which -100 thread.sleep(-100); displaying variable's value system.out.println(j); } catch (exception expn) iscaught here system.out.println(expn); < pre> <p> <strong>Output:</strong> </p> <pre> java.lang.IllegalArgumentException: timeout value is negative </pre> <hr></5;></pre></5;></pre></5;i++){>

Kao što dobro znate da se u jednom trenutku izvršava samo jedna nit. Ako nit spavate određeno vrijeme, planer niti preuzima drugu nit i tako dalje.

Primjer metode sleep() u Javi: na glavnoj niti

Naziv datoteke: TestSleepMethod2.java

 // important import statements import java.lang.Thread; import java.io.*; public class TestSleepMethod2 { // main method public static void main(String argvs[]) { try { for (int j = 0; j <5; 1 1000 j++) { the main thread sleeps for milliseconds, which is sec whenever loop runs thread.sleep(1000); displaying value of variable system.out.println(j); } catch (exception expn) catching exception system.out.println(expn); < pre> <p> <strong>Output:</strong> </p> <pre> 0 1 2 3 4 </pre> <h3>Example of the sleep() Method in Java: When the sleeping time is -ive</h3> <p>The following example throws the exception IllegalArguementException when the time for sleeping is negative.</p> <p> <strong>FileName:</strong> TestSleepMethod3.java</p> <pre> // important import statements import java.lang.Thread; import java.io.*; public class TestSleepMethod3 { // main method public static void main(String argvs[]) { // we can also use throws keyword followed by // exception name for throwing the exception try { for (int j = 0; j <5; j++) { it throws the exception illegalargumentexception as time is -ive which -100 thread.sleep(-100); displaying variable\'s value system.out.println(j); } catch (exception expn) iscaught here system.out.println(expn); < pre> <p> <strong>Output:</strong> </p> <pre> java.lang.IllegalArgumentException: timeout value is negative </pre> <hr></5;></pre></5;>

Primjer metode sleep() u Javi: Kada je vrijeme mirovanja -ive

Sljedeći primjer izbacuje iznimku IllegalArguementException kada je vrijeme za spavanje negativno.

Naziv datoteke: TestSleepMethod3.java

 // important import statements import java.lang.Thread; import java.io.*; public class TestSleepMethod3 { // main method public static void main(String argvs[]) { // we can also use throws keyword followed by // exception name for throwing the exception try { for (int j = 0; j <5; j++) { it throws the exception illegalargumentexception as time is -ive which -100 thread.sleep(-100); displaying variable\'s value system.out.println(j); } catch (exception expn) iscaught here system.out.println(expn); < pre> <p> <strong>Output:</strong> </p> <pre> java.lang.IllegalArgumentException: timeout value is negative </pre> <hr></5;>