başlangıç() İş parçacığı sınıfının yöntemi, iş parçacığının yürütülmesini başlatmak için kullanılır. Bu yöntemin sonucu aynı anda çalışan iki iş parçacığıdır: geçerli iş parçacığı (çağrıdan start yöntemine dönen) ve diğer iş parçacığı (run yöntemini yürüten).
start() yöntemi, run() yönteminde belirtilen kodu ayrı bir iş parçacığında yürütmek için Runnable arayüzünün run() yöntemini dahili olarak çağırır.
Başlangıç iş parçacığı aşağıdaki görevleri gerçekleştirir:
- Yeni bir konunun istatistiklerini veriyor
- İş parçacığı Yeni Durum'dan Çalıştırılabilir duruma geçer.
- İş parçacığı yürütme şansı yakaladığında, hedef run() yöntemi çalışacaktır.
Sözdizimi
public void start()
Geri dönüş değeri
It does not return any value.
İstisna
YasadışıThreadStateException - Bu istisna, start() yönteminin birden fazla kez çağrılması durumunda ortaya çıkar.
Örnek 1: İş parçacığı sınıfını genişleterek
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(); } }Şimdi Test Edin
Çıktı:
Thread is running...
Örnek 2: Çalıştırılabilir Arayüz Uygulayarak
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(); } }Şimdi Test Edin
Çıktı:
Thread is running...
Örnek 3: start() yöntemini birden fazla kez çağırdığınızda
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(); } }Şimdi Test Edin
Çıktı:
First thread running... Exception in thread 'main' java.lang.IllegalThreadStateException at java.lang.Thread.start(Thread.java:708) at StartExp3.main(StartExp3.java:12)