Belajar Menggunakan CountDownLatch di Program Java
CountDownLatch adalah salah satu class library yang diperkenalkan sejak JDK 1.5, dalam package (java.util.concurrent) , yang dimana fungsinya sebagai bantuan sinkronisasi, yang memungkinkan satu atau lebih thread menunggu , untuk menyelesaikan suatu task yang diberikan .
Sebagai developer , kalian bisa menggunakan objek dari CountDownLatch , jika kalian menggunakan banyak thread untuk melakukan pekerjaan yang berbeda-beda , serta ingin tahu tepatnya semua task selesai , sehingga kalian dapat berpindah ke tahap selanjutnya. Dengan kata lain , kalian dapat memblokir thread , sampai thread lain menyelesaikan task atau tugasnya.
Pada artikel belajar java kali ini , kita akan mencoba membuat contoh penggunaan countdownlatch , di bahasa pemrograman java. Selengkapnya , berikut mari kita simak lebih lanjut :
1. Pertama buka IntelliJ IDEA ,atau Software IDE lain yang kalian gunakan , di Komputer atau Laptop kalian.
2. Kalian bisa perhatikan contoh code ,beserta penjelasannya di bawah:
Contoh Code :
Penjelasan :
Pada contoh code program di atas , pertama-tama kita membuat class yang bernama Prosesor ,yang mengimplementasi interface Runnable.
Selanjutnya kita mendeklarasikan variable referensi latch , dari CountDownLatch ,yang akan dikembalikan nilainya di dalam constructor milik class Prosesor.
Lalu untuk menjalankan tasknya , kita menggunakan method .run() , yang didalamnya kita mengeksekusi method Thread.sleep() , untuk menjeda selama 3 detik.
Kemudian kita gunakan method latch.countdown() , untuk decreement nilai count latch , yang akan menghitung mundur dari 3 2 1 0. Method ini akan melepaskan semua thread yang menunggu , sampai penghitung mencapai angka 0.
Pada class Aplikasi ,kita akan mencoba mengeksekusi program, seperti biasa di dalam method main().
Pertama kita menginstansi objek baru latch , lalu menentukan hitungan 3, yang akan dikurangi nilainya oleh method countdown() , saat program dijalankan.
Selanjutnya ,kita mereferensikan variable service ,untuk mengatur aliran task , dari class ExecutorService.
Baca juga : Belajar Menggunakan Thread Pool di Program Java
Method newFixedThreadPool() , digunakan untuk menentukan ukuran thread yang akan bekerja, yang dalam hal ini kita menggunakan 3 worker thread.
Lalu kita menggunakan looping for , untuk mensubmit 3 task ,dari 3 thread yang bekerja di thread pool.
Setelah itu , kita akan menggunakan method latch.await() ,yang digunakan untuk memblock main thread , atau thread saat ini untuk sementara , sampai nilai count latch mencapai angka 0 , yang selanjutnya akan menampilkan output hasil Selesai.
Output :
Contoh Code |
Penjelasan :
Pada contoh code program di atas , pertama-tama kita membuat class yang bernama Prosesor ,yang mengimplementasi interface Runnable.
Selanjutnya kita mendeklarasikan variable referensi latch , dari CountDownLatch ,yang akan dikembalikan nilainya di dalam constructor milik class Prosesor.
Lalu untuk menjalankan tasknya , kita menggunakan method .run() , yang didalamnya kita mengeksekusi method Thread.sleep() , untuk menjeda selama 3 detik.
Kemudian kita gunakan method latch.countdown() , untuk decreement nilai count latch , yang akan menghitung mundur dari 3 2 1 0. Method ini akan melepaskan semua thread yang menunggu , sampai penghitung mencapai angka 0.
Pada class Aplikasi ,kita akan mencoba mengeksekusi program, seperti biasa di dalam method main().
Pertama kita menginstansi objek baru latch , lalu menentukan hitungan 3, yang akan dikurangi nilainya oleh method countdown() , saat program dijalankan.
Selanjutnya ,kita mereferensikan variable service ,untuk mengatur aliran task , dari class ExecutorService.
Baca juga : Belajar Menggunakan Thread Pool di Program Java
Method newFixedThreadPool() , digunakan untuk menentukan ukuran thread yang akan bekerja, yang dalam hal ini kita menggunakan 3 worker thread.
Lalu kita menggunakan looping for , untuk mensubmit 3 task ,dari 3 thread yang bekerja di thread pool.
Setelah itu , kita akan menggunakan method latch.await() ,yang digunakan untuk memblock main thread , atau thread saat ini untuk sementara , sampai nilai count latch mencapai angka 0 , yang selanjutnya akan menampilkan output hasil Selesai.
Output :
Output Hasil |
Post a Comment for "Belajar Menggunakan CountDownLatch di Program Java"
Silakan berkomentar dengan baik ,jangan SPAM di komentar ini . NO BACKLINK /LINK HIDUP