Selasa, 02 Desember 2014

Konsep Dasar Program Multithreading (Multitasking)

Pengertian Multithreading

Seperti yang kita ketahui bahwa bahasa pemrograman java adalah bahasa yang memiliki banyak sekali fitur yang unik, salah satunya adalah fitur multithreading. Suatu program dengan menggunakan fitur multithreading dapat menjalankan 2 atau lebih kegiatan dalam waktu yang bersamaan. Konsep ini juga biasa disebut dengan multitasking.

Sebenarnya multitasking dibagi menjadi 2 bagian yaitu : Process Based dan Thread Base. Process Based adalah multitasking saat suatu program dijalankan bersamaan dengan program lain dalam satu waktu. Contoh kasus suatu multitasking Process Based adalah bila kita sedang menulis laporan di OpenOffice/Ms. Word sambil mencari referensi di Internet dengan menggunakan Software Mozila/Google Chroom sebagai Software Browser dalam satu waktu.

 Hal ini kita sedang menggunakan 2 software dalam satu waktu.
Thread Base adalah multitasking saat suatu program dijalankan, program itu dapat melakukan proses – proses lain yang dilakukan bersamaan dalam suatu waktu. Contohnya adalah bila kita sedang mencetak suatu lembar laporan yang kita lakukan di OpenOffice/Ms. Word.
Kadang sambil menunggu cetakan selesai, kita biasa melihat-lihat cetakan selanjutnya yang akan dicetak, dan kadang kita juga mengedit tulisan dengan merubah ukuaran huruf atau warna huruf misalnya. Nah, inilah proses Thread Base multitasking yang terjadi dalam kegiatan tersebut.

Apa kegunaan Multithreading pada program yang kita buat???

Nah,untuk anda yang pernah belajar organisasi komputer atau mungkin lebih lanjut ke arsitektur komputer pasti kamu mengetahui bahwa device I/O seperti keyboard, mouse dan lain sebagainya, mempunyai kecepatan yang lebih jauh lambat dibanding dengan kecepatan si proses dalam hal ini adalah Processor.

Untuk menghemat waktu dan memaksimalkan kerja dari Processor yang memiliki kecepatan lebih dari pada device I/O, maka saat kita menunggu masukan atau keluaran dari device I/O.

Dalam proses multitasking, ada keadaan yang mesti kita ketahui yaitu keadaan saat berjalan (Running) artinya adalah Processor menjalankan suatu kegiatan. Keadaan menghentikan sementara (Suspend) adalah kegiatan dari processor dihentikan sementara sampai keadaan dilanjutkan yaitu keadaan Resumed atau kadang keadaan pembatalan kegiatan processor (Blocked) dan terakhir keadaan selesai atau finishing (Terminating).

Mungkin Sekian yang  bisa saya bahas dari Multithreading,jika ada salah-salah kata mohon dimaaf kan.

Tugas : Kuliah Algoritma Pemrograman Java
http://uzi-online.blogspot.com/2000/11/kuliah-algoritma-pemrograman-java.html

Tidak ada komentar:

Posting Komentar