A Rajt() A szál osztályának metódusa a szál végrehajtásának megkezdésére szolgál. Ennek a metódusnak az eredménye két párhuzamosan futó szál: az aktuális szál (amely a hívásból visszatér a start metódusba) és a másik szál (amely végrehajtja a futtatási metódusát).
A start() metódus belsőleg meghívja a Runnable interfész run() metódusát, hogy a run() metódusban megadott kódot külön szálban hajtsa végre.
A kezdőszál a következő feladatokat hajtja végre:
- Új témát hoz létre
- A szál új állapotból futtatható állapotba kerül.
- Amikor a szál lehetőséget kap a végrehajtásra, a cél run() metódus futni fog.
Szintaxis
public void start()
Visszatérési érték
It does not return any value.
Kivétel
IllegalThreadStateException - Ez a kivétel akkor dob, ha a start() metódust többször hívják.
1. példa: A szálosztály kiterjesztésével
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(); } }Tesztelje most
Kimenet:
Thread is running...
2. példa: A futtatható interfész megvalósításával
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(); } }Tesztelje most
Kimenet:
Thread is running...
3. példa: Ha egynél többször hívja meg a start() metódust
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(); } }Tesztelje most
Kimenet:
First thread running... Exception in thread 'main' java.lang.IllegalThreadStateException at java.lang.Thread.start(Thread.java:708) at StartExp3.main(StartExp3.java:12)