Perbedaan Antara Runnable Dan Thread

Daftar Isi:

Perbedaan Antara Runnable Dan Thread
Perbedaan Antara Runnable Dan Thread

Video: Perbedaan Antara Runnable Dan Thread

Video: Perbedaan Antara Runnable Dan Thread
Video: Thread и Runnable. Java Professional. Урок 13 2024, Mungkin
Anonim

Perbedaan Kunci - Runnable vs Thread

Sebuah program yang sedang dieksekusi dikenal sebagai proses. Prosesnya dapat dibagi menjadi beberapa subproses. Misalnya, Microsoft Word adalah sebuah proses. Pada saat yang sama, ia memeriksa kesalahan ejaan dan tata bahasa. Itu adalah subproses. Subproses ini dikenal sebagai utas. Multithreading adalah proses menjalankan beberapa utas secara bersamaan. Aplikasi berulir dapat dibangun menggunakan bahasa pemrograman yang berbeda. Runnable dan Thread dikaitkan dengan pemrograman Java. Ada dua metode di Java untuk membuat thread dengan mengimplementasikan antarmuka Runnable atau memperluas kelas Thread. Saat mengimplementasikan Runnable, banyak utas dapat berbagi objek utas yang sama sementara di kelas Memperluas utas, setiap utas memiliki objek unik yang terkait dengannya. Itulah perbedaan utama antara Runnable dan Thread.

ISI

1. Gambaran Umum dan Perbedaan Utama

2. Apa itu Runnable

3. Apa itu Thread

4. Persamaan Antara Runnable dan Thread

5. Perbandingan Berdampingan - Runnable vs Thread dalam Bentuk Tabular

6. Ringkasan

Apa itu Runnable?

Sebuah utas melewati beberapa status. "Baru" adalah awal dari siklus hidup thread. Setelah metode start () memanggil utas baru, utas menjadi dapat dijalankan. Jika penjadwal utas memilih utas, itu transit ke status berjalan. Utas sedang menunggu status jika utas tersebut menunggu utas lain untuk melakukan tugas. Setelah utas menyelesaikan pekerjaan, utas masuk ke status terminasi.

Sebuah utas dapat diimplementasikan menggunakan antarmuka Runnable. Lihat program di bawah ini.

Perbedaan Antara Runnable dan Thread
Perbedaan Antara Runnable dan Thread

Gambar 01: Program Java untuk membuat thread menggunakan antarmuka Runnable

Menurut program di atas, kelas Runnable Demo mengimplementasikan antarmuka Runnable. Metode run () ada di dalam kelas yang mengimplementasikan antarmuka Runnable. Ini adalah titik masuk utas. Logikanya ada di metode run (). Dalam program utama, utas dibuat dengan menentukan objek yang dibuat dari kelas Demo Runnable. Ini adalah t1. Metode start () dipanggil menggunakan t1.

Lihat program di bawah ini.

Perbedaan Antara Runnable dan Thread Figure 02
Perbedaan Antara Runnable dan Thread Figure 02

Gambar 02: Program Java untuk membuat thread untuk menjalankan loop, dengan mengimplementasikan antarmuka Runnable

Berdasarkan contoh di atas, kelas Runnable Demo mengimplementasikan antarmuka Runnable. Logika untuk dieksekusi menggunakan utas ditulis dalam metode run (). Dalam program utama, utas dibuat dengan menentukan objek yang dibuat dari kelas Demo Runnable. Ini adalah t1. Kemudian, metode start () dipanggil menggunakan t1.

Apa itu Thread?

Metode lain untuk membuat utas adalah dengan memperluas kelas Thread. Ini terdiri dari tiga langkah. Pertama adalah mendeklarasikan kelas sebagai memperluas kelas Thread. Setelah itu, metode run () harus ditulis. Ini memiliki urutan langkah yang harus dijalankan utas. Akhirnya, objek utas dibuat, dan metode start () dipanggil untuk memulai eksekusi utas. Lihat program di bawah ini.

Perbedaan Antara Runnable dan Thread Figure 03
Perbedaan Antara Runnable dan Thread Figure 03

Gambar 03: Program Java yang memperluas kelas Thread

Menurut program di atas, kelas MyThread memperluas kelas Thread. Ini menggantikan metode run. Metode run () berisi logika yang akan dijalankan oleh utas. Ini adalah titik masuk ke utas. Kemudian objek utas dibuat. Ini adalah thread1. Utas dimulai menggunakan metode start (). Ini akan menjalankan metode panggilan ke run ().

Contoh program dari dua kelas yang memperluas kelas Thread adalah sebagai berikut.

Perbedaan Utama Antara Runnable dan Thread
Perbedaan Utama Antara Runnable dan Thread

Gambar 04: Program Java dengan dua kelas yang memperluas kelas Thread

Menurut program di atas, baik kelas A dan B adalah perluasan kelas Thread. Kedua kelas tersebut menerapkan metode run (). Utas utama adalah yang menjalankan metode main (). Sebelum utas utama mati, ini membuat dan memulai utas1 dan utas2. Pada saat utas utama mencapai akhir dari metode utama, tiga utas berjalan secara paralel. Tidak ada urutan khusus di mana utas memberikan keluaran. Setelah utas dimulai, sulit untuk memutuskan urutan yang akan mereka jalankan. Mereka berjalan mandiri.

Apa Persamaan Antara Runnable dan Thread?

Keduanya digunakan untuk membuat utas di Java

Apa Perbedaan Antara Runnable dan Thread?

Artikel Diff Tengah sebelum Tabel

Runnable vs Thread

Runnable adalah antarmuka di Java untuk membuat utas yang memungkinkan banyak utas berbagi objek utas yang sama. Utas adalah kelas di Java untuk membuat utas di mana setiap utas memiliki objek unik yang terkait dengannya.
Penyimpanan
Di Runnable, beberapa utas berbagi objek yang sama, jadi membutuhkan lebih sedikit memori. Di kelas Thread, setiap utas membuat objek unik, oleh karena itu membutuhkan lebih banyak memori.
Memperluas Kemampuan
Setelah mengimplementasikan antarmuka Runnable, itu bisa memperluas kelas. Beberapa warisan tidak didukung di Java. Setelah memperluas kelas Thread, ia tidak dapat memperluas kelas lainnya.
Pemeliharaan Kode
Antarmuka yang dapat dijalankan membuat kode lebih dapat dipelihara. Di kelas Thread, pemeliharaan memakan waktu.

Ringkasan - Runnable vs Thread

Sebuah proses dibagi menjadi beberapa sub-proses untuk melakukan banyak tugas pada waktu yang bersamaan. Subproses ini dikenal sebagai utas. Membuat instance thread dapat dilakukan dengan mengimplementasikan antarmuka Runnable atau dengan memperluas Kelas Thread. Sangat mudah untuk memperluas kelas Thread, tetapi ini bukanlah praktik Pemrograman Berorientasi Objek yang lebih baik. Saat mengimplementasikan Runnable, banyak utas dapat berbagi objek utas yang sama sementara dalam memperluas kelas Thread, setiap utas memiliki objek unik yang terkait dengannya. Itulah perbedaan antara Runnable dan Thread. Di kelas Thread, beberapa pembuatan objek dapat menggunakan lebih banyak memori.

Unduh PDF Runnable vs Thread

Anda dapat mengunduh versi PDF dari artikel ini dan menggunakannya untuk tujuan offline sesuai catatan kutipan. Silahkan download versi PDF disini Perbedaan Antara Runnable dan Thread

Direkomendasikan: