logo

Тхреад.слееп() у Јави са примерима

Класа Јава Тхреад пружа две варијанте методе слееп(). Прва прихвата само један аргумент, док друга варијанта прихвата два аргумента. Метода слееп() се користи за заустављање рада нити на одређено време. Време до којег нит остаје у стању мировања познато је као време мировања нити. Након што је време мировања завршено, нит почиње да се извршава са места где је отишла.

Синтакса методе слееп():

Следи синтакса методе слееп().

апстрактне методе
 public static void sleep(long mls) throws InterruptedException public static void sleep(long mls, int n) throws InterruptedException 

Метода слееп() са једним параметром је нативна метода, а имплементација матичне методе се остварује у другом програмском језику. Друге методе које имају два параметра нису изворне методе. То јест, његова имплементација се остварује у Јави. Можемо приступити методама слееп() уз помоћ класе Тхреад, пошто потпис метода слееп() садржи кључну реч статиц. Изворни, као и не-нативни метод, бацају означени изузетак. Стога, овде може да функционише или три-цатцх блок или кључна реч тхровс.

Метод Тхреад.слееп() се може користити са било којом нити. То значи да било која друга нит или главна нит може позвати методу слееп().

Параметри:

Следе параметри који се користе у методи слееп().

линкедлист

млс: Време у милисекундама је представљено параметром млс. Трајање током којег ће нит спавати је дато методом слееп().

н: Показује додатно време до којег програмер или програмер жели да нит буде у стању мировања. Опсег н је од 0 до 999999.

Метода не враћа ништа.

Важне тачке које треба запамтити о методи Слееп().

Кад год се изврше методе Тхреад.слееп(), оне увек заустављају извршавање тренутне нити.

Кад год друга нит направи прекид док је тренутна нит већ у режиму мировања, онда се избацује ИнтерруптедЕкцептион.

Ако је систем који извршава нити заузет, онда је стварно време мировања нити генерално више у поређењу са временом које је прошло у аргументима. Међутим, ако систем који извршава методу слееп() има мање оптерећење, онда је стварно време мировања нити скоро једнако времену које је прошло у аргументу.

Пример методе слееп() у Јави: на прилагођеној нити

Следећи пример показује како се може користити метода слееп() на прилагођеној нити.

пронађи мој ипхоне андроид

Назив документа: ТестСлеепМетход1.јава

лав у поређењу са тигром
 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++){>

Као што добро знате да се истовремено извршава само једна нит. Ако спавате нит одређено време, планер нити подиже другу нит и тако даље.

Пример методе слееп() у Јави: на главној нити

Назив документа: ТестСлеепМетход2.јава

 // 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;>

Пример методе слееп() у Јави: Када је време спавања -иве

Следећи пример избацује изузетак ИллегалАргуементЕкцептион када је време за спавање негативно.

Назив документа: ТестСлеепМетход3.јава

 // 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;>