logo

طريقة Java Thread start ().

ال يبدأ() يتم استخدام طريقة فئة الخيط لبدء تنفيذ الخيط. نتيجة هذه الطريقة هي خيطين يعملان بشكل متزامن: الخيط الحالي (الذي يعود من استدعاء طريقة البدء) والخيط الآخر (الذي ينفذ طريقة التشغيل الخاصة به).

تستدعي طريقة start () طريقة run () داخليًا للواجهة القابلة للتشغيل لتنفيذ التعليمات البرمجية المحددة في طريقة run () في مؤشر ترابط منفصل.

يقوم مؤشر ترابط البداية بالمهام التالية:

  • انها احصائيات موضوع جديد
  • ينتقل الخيط من الحالة الجديدة إلى الحالة القابلة للتشغيل.
  • عندما يحصل الخيط على فرصة للتنفيذ، سيتم تشغيل أسلوب التشغيل () المستهدف الخاص به.

بناء الجملة

 public void start() 

قيمة الإرجاع

 It does not return any value. 

استثناء

IllegalThreadStateException - يُطرح هذا الاستثناء إذا تم استدعاء أسلوب start() أكثر من مرة.

مثال 1: عن طريق توسيع فئة الموضوع

 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(); } } 
اختبره الآن

انتاج:

 Thread is running... 

المثال 2: من خلال تنفيذ واجهة قابلة للتشغيل

 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(); } } 
اختبره الآن

انتاج:

 Thread is running... 

مثال 3: عند استدعاء الأسلوب start() أكثر من مرة

 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(); } } 
اختبره الآن

انتاج:

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