Bir iş parçacığı oluşturmanın iki yolu vardır:
- Thread sınıfını genişleterek
- Çalıştırılabilir arayüzü uygulayarak.
Konu sınıfı:
Thread sınıfı, bir thread üzerinde işlemler oluşturmak ve gerçekleştirmek için yapıcılar ve yöntemler sağlar. Thread sınıfı, Object sınıfını genişletir ve Runnable arayüzünü uygular.
Thread sınıfının yaygın olarak kullanılan Yapıcıları:
- İplik()
- Konu(Dize adı)
- Konu (Çalıştırılabilir r)
- Konu(Çalıştırılabilir r,Dize adı)
Thread sınıfının yaygın olarak kullanılan yöntemleri:
Çalıştırılabilir arayüz:
Runnable arayüzü, örneklerinin bir iş parçacığı tarafından yürütülmesi amaçlanan herhangi bir sınıf tarafından uygulanmalıdır. Çalıştırılabilir arayüzde run() adında tek bir yöntem bulunur.
harita javası nedir
Bir konu başlatmak:
start() yöntemi Yeni oluşturulan bir iş parçacığını başlatmak için of Thread sınıfı kullanılır. Aşağıdaki görevleri yerine getirir:
- Yeni bir iş parçacığı başlar (yeni çağrı yığınıyla).
- İş parçacığı Yeni durumdan Çalıştırılabilir duruma geçer.
- İş parçacığı yürütme şansı yakaladığında, hedef run() yöntemi çalışacaktır.
1) Thread sınıfını genişleterek Java Thread Örneği
Dosya adı: Çoklu.java
class Multi extends Thread{ public void run(){ System.out.println('thread is running...'); } public static void main(String args[]){ Multi t1=new Multi(); t1.start(); } }
Çıktı:
thread is running...
2) Çalıştırılabilir arayüzü uygulayarak Java Konu Örneği
Dosya adı: Çoklu3.java
Java'da yakalamayı deneyin
class Multi3 implements Runnable{ public void run(){ System.out.println('thread is running...'); } public static void main(String args[]){ Multi3 m1=new Multi3(); Thread t1 =new Thread(m1); // Using the constructor Thread(Runnable r) t1.start(); } }
Çıktı:
thread is running...
Thread sınıfını genişletmiyorsanız, sınıf nesneniz bir iş parçacığı nesnesi olarak değerlendirilmez. Bu nedenle, Thread sınıfı nesnesini açıkça oluşturmanız gerekir. Sınıfınızın run() yönteminin yürütülebilmesi için Runnable'ı uygulayan sınıfınızın nesnesini iletiyoruz.
3) Thread Sınıfını Kullanmak: Thread(String Name)
Yukarıda tanımlanan yapıcıları kullanarak yeni iş parçacıkları oluşturmak için doğrudan Thread sınıfını kullanabiliriz.
Dosya adı: MyThread1.java
public class MyThread1 { // Main method public static void main(String argvs[]) { // creating an object of the Thread class using the constructor Thread(String name) Thread t= new Thread('My first thread'); // the start() method moves the thread to the active state t.start(); // getting the thread name by invoking the getName() method String str = t.getName(); System.out.println(str); } }
Çıktı:
My first thread
4) Thread Sınıfını Kullanma: Thread(Runnable r, String name)
Aşağıdaki programı izleyin.
jdbc
Dosya adı: MyThread2.java
public class MyThread2 implements Runnable { public void run() { System.out.println('Now the thread is running ...'); } // main method public static void main(String argvs[]) { // creating an object of the class MyThread2 Runnable r1 = new MyThread2(); // creating an object of the class Thread using Thread(Runnable r, String name) Thread th1 = new Thread(r1, 'My new thread'); // the start() method moves the thread to the active state th1.start(); // getting the thread name by invoking the getName() method String str = th1.getName(); System.out.println(str); } }
Çıktı:
My new thread Now the thread is running ...