logo

Java Thread start() metode

De start() metoden for trådklassen brukes til å starte utførelsen av tråden. Resultatet av denne metoden er to tråder som kjører samtidig: den gjeldende tråden (som returnerer fra kallet til startmetoden) og den andre tråden (som kjører sin kjøremetode).

Start()-metoden kaller internt run()-metoden til Runnable-grensesnittet for å utføre koden spesifisert i run()-metoden i en egen tråd.

Starttråden utfører følgende oppgaver:

  • Det viser en ny tråd
  • Tråden flyttes fra New State til Runnable state.
  • Når tråden får en sjanse til å kjøre, vil dens target run()-metode kjøre.

Syntaks

 public void start() 

Returverdi

 It does not return any value. 

Unntak

IllegalThreadStateException - Dette unntaket kaster hvis start()-metoden kalles mer enn én ganger.

Eksempel 1: Ved å utvide trådklassen

 public class StartExp1 extends Thread { public void run() { System.out.println('Thread is running...'); } public static void main(String args[]) { StartExp1 t1=new StartExp1(); // this will call run() method t1.start(); } } 
Test det nå

Produksjon:

 Thread is running... 

Eksempel 2: Ved å implementere kjørbart grensesnitt

 public class StartExp2 implements Runnable { public void run() { System.out.println('Thread is running...'); } public static void main(String args[]) { StartExp2 m1=new StartExp2 (); Thread t1 =new Thread(m1); // this will call run() method t1.start(); } } 
Test det nå

Produksjon:

 Thread is running... 

Eksempel 3: Når du kaller start()-metoden mer enn én gang

 public class StartExp3 extends Thread { public void run() { System.out.println('First thread running...'); } public static void main(String args[]) { StartExp3 t1=new StartExp3(); t1.start(); // It will through an exception because you are calling start() method more than one time t1.start(); } } 
Test det nå

Produksjon:

 First thread running... Exception in thread 'main' java.lang.IllegalThreadStateException at java.lang.Thread.start(Thread.java:708) at StartExp3.main(StartExp3.java:12)