THREAD



Thread adalah
    - Objek yang mewakili satu unit eksekusi sekumpulan instruksi
    - Sekumpulan instruksi yang dapat dieksekusi secara mandiri
Multithread adalah
    - suatu kemampuan yang menjalankan thread secara bersamaan/bergantian


Pembuatan Thread

Ada 2 cara :

1. Membuat kelas implementasi dari interface Runnable public class namaThread1 implements Runnable
2. Membuat kelas turunan dari kelas thread public class Namathreads extends Thread

KONDISI THREAD






Hanya ada satu  interface untuk membuat Thread yaitu Runnable
Method-method yang standard untuk multithread yaitu
start(), dipanggil setiap kali thread dimulai
Init() untuk program inisialiasasi
run() berisi badan thread
stop() menghentikan thread


Contoh membuat kelas turunan dari class  Thread
class Proses extends Thread
{
    public Proses()
    {
        super();
    }
    public void run()
    {
        System.out.println("thread sedang dijalankan");
    }
}

class Thread1
{
    public static void main (String[] args)
    {
        Proses xyz=new Proses();
        xyz.start();
    }
}






Contoh membuat Thread dari interface runnable


class Coba implements Runnable
{
    public static void main (String[] args)
    {
        Coba abc=new Coba();
        abc.run();
    }
    public void run ()
    {
        System.out.println("Thread sedang dijalankan");
    }
}


Contoh 1

class Mobil extends Thread {
   public Mobil(String id) {
      super(id); // id adalah nama thread
   }
   public void run() {
      String nama = getName();
      for (int i=0; i<5; i++) {
         try {
            Thread.currentThread().sleep(1000); // tunggu 1000 milli detik
         }
         catch (InterruptedException ie) {
            System.out.println("Terinterupsi");
         }
         System.out.println("Thread " + nama + ": dijalankan ke " + i);
      }
   }
}

public class AplyThreadMobil {
   public static void main(String[] args) {
      Mobil mbl1 = new Mobil("Mobil1");  // membuat objek Thread1, dinamai Mobil1
      Mobil mbl2 = new Mobil("Mobil2");  // membuat objek Thread2, dinamai Mobil2
      mbl1.start();  // eksekusi thread mbl1, dengan cara mengeksekusi method run()
      mbl2.start();  // eksekusi thread mbl2, dengan cara mengeksekusi method run()
   }   
}

0 komentar:

Posting Komentar