Skip to main content

THREAD

Halo Semua! Ahihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihi.....
Ali - 1 tahun wkwkwkwkwk
Cepet banget ya waktu berlalu kita udah sampe aja ke bahasan selanjutnya yaitu...... TRHEAD! apsi apsi apsi...
.
.
Thread adalah bagian kecil dari suatu proses yang bisa dijadwalkan oleh sistem operasi.
Thread juga disebut sebagai proses ringan (lightweight).  => Demi Lovato - Lightweight (canda)
# Single Threading
Adalah sebuah proses yang hanya memiliki satu thread yang berjalan. Biasanya fungsi thread ini digunakan sebagai pengendali jalannya proses. 
# Multi Threading
Adalah proses yang memiliki lebih dari satu thread yang berjalan didalamnya, sehingga dalam hal ini proses dapat menjalankan lebih dari satu tugas dalam satu waktu.
.
.
Langsung aja kita ke contoh aplikasiannya ya.. berikut adalah program dalam bahasa C yang menggunakan thread untuk memutar music pada terminal di linux. Program ini memiliki spesifikasi sebagai berikut :
1. Perintah help untuk menampilkan daftar perintah yang dapat digunakan. 
2. Memiliki fitur list untuk menampilkan semua lagu pada folder playlist 
3. Memiliki fitur play untuk menjalankan lagu 
4. Memiliki fitur pause setelah t detik 
5. Memiliki fitur continue setelah t detik 
6. Memiliki fitur stop setelah t detik
.
.
Gambar pertama, seperti biasa kita harus menyertakan library-library yang dibutuhkan dalam program ini bisa kita lihat pada gambar. Nah, di bawahnya kita menyertakan thread sebanyak 2 buah. Untuk apa saja 2 buah thread ini..? sabar..
Gambar selanjutnya kita ke fungsi main dulu ya.. pertama, kita harus masuk ke dalam folder yang berisi lagu yang akan dimainkan menggunakan 'chdir'. Selanjutnya kita buat dan passing ke thread yang pertama yaitu thread untuk menjalankan fungsi help sebelum kita ke fitur-fitur yang akan disediakan.
Di bawahnya, akan ada pengecekan apabila thread tidak berhasil dibuat maka akan menampilkan pesan pemberitahuan. dan yang terakhir akan ada thread join untuk menunggu masing-masing thread selesai menjalankan tugasnya.
G1.Fungsi Main
Selanjutnya, kita ke fungsi thread help. Dalam fungsi ini, kita akan menscan kata sebagai perintah untuk menuju ke fitur-fitur yang akan disediakan yaitu "help" pada string menu. Selain kata itu, maka kita tidak akan masuk ke dalam pemilihan fitur selanjutnya.
G2.1.Fungsi Help
....
G2.2.Fungsi Help
....

G2.3.Fungsi Help
Baiklah.. masuk ke pilihan fitur yang pertama yaitu "play". Apabila kita mengisi perintah play pada string fitur, di sinilah thread kedua digunakan, yaitu untuk menjalankan lagu. Bisa kita lihat yang dilakukan dalam case ini, membuat serta mempassing ke dalam fungsi play.
G2.4.Fungsi Help Fitur Play
Di dalam fungsi play atau thread kedua, kita tinggal menggunakan system untuk memainkan lagu, dalam hal ini yang dimainkan adalah lagu BeginAgain.mp3. Sebelum itu, dipastikan kita sudah menginstal mpg123 di linux ya^^
G3.Fungsi Play
Kembali lagi ke fitur lainnya yaitu "list" dalam fitur ini, kita tinggal menggunakan system grep mp3 untuk menampilkan file-file .mp3 yang ada.
G2.5.Fungsi Help Fitur List
Fitur "pause" yang akan memberhentikan lagu dalam waktu t detik sesuai dengan angka yang diimputkan. Kita tinggal menggunakan system pkill -SIGSTOP mpg123 dan sleep untuk lamanya.
G2.6.Fungsi Help Fitur Pause
Fitur selanjutnya yaitu "stop" untuk memberhentikan lagu yang sedang dimainkan setelah t detik. Dalam hal ini, digunakan system pkill mpg123 langsung. 
G2.7.Fungsi Help Fitur Stop
Fitur yang terakhir yaitu "continue". Jadi, continue digunakan untuk melanjutkan lagu yang sebelumnya dipause sama seperti yang lain menggunakan sleep selama t detik sebelum lagu dilanjutkan. Untuk continue digunakan system pkill -SIGCONT mpg123. 
.
.
.
Kodingan Cnya udah gitu doang (ampun gak doang sih......)
Selanjutnya kita praktekkan aja ya.. 
install dulu mpg123, 
siapin folder buat ngeletakin lagu yang mau km denger lewat terminal..
cuss
.
.
.
Masuk dulu ke direktori tempat program yang mau dijalankan berada.. lalu compile dan jalankan seperti yang ada pada gambar di bawah. Jangan lupa menyertakan -lpthread ya dalam mengompile^^
Selanjutnya layar akan clear dan kita diharuskan untuk menginput perintah "help". ingat hanya help bukan yang lain....... karena program kita dirancang seperti itu^^ so, mau gimanapun km minta tolong ga bakal ditolongin.. hiks hiks.. :']
Barulah kita masuk ke pemilihan fitur. Tinggal ketik deh perintah apa yang mau kamu lakuin.
Kalo kamu ketik "list", noh.. lagunya cuma 1 maap...
Kalo kamu ketik "play", selamat menikmati lagumu ya^^ di sana juga bakal kelihatan detail lagu yang sedang diputar lho.. wkwk tapi yang ini ga lengkap infonya sorry :p
Kalo kamu ketik "pause 5". musicmu akan dipause 5 detik kemudiannya :'( jangan sedihh.. masih ada fitur selanjutnya^^ 
Kalo kamu ketik "continue 5" lagumu lanjut deh xD 5 detik kemudian...
Yang terakhir, kalo kamu uda bosen, ketik aja "stop". huhuhuhu
.
.
.
Nah, gimana bahasan kali ini tentang thread? berguna banget kan ya kaann.. hehe canda.. ini baru sebagian kecil aja, kamu masih bisa belajar tentang thread dari mana aja sepenjuru internet yang luasnya minta ampun ini oks oks^^ jangan lupa dipraktekin, soalnya kalo engga dicoba ga bakal bisa ._. sheepla guys makasi ya yang uda mau baca sampai akhir.. ga lama lagi kita ketemu lagi kok ehehe.. Jangan lupa bahagia ya seberat apapun tugasnya~ Semoga harimu menyenangkan^^ 
.
Ahihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihi.....

Comments

Popular posts from this blog

Kerangka Acuan Kerja Sistem Internal Media Online

A. PENDAHULUAN Latar Belakang Memasuki era serba digital, dimana semua aspek kehidupan manusianya bergantung pada teknologi yang semakin pesat, membuat gaya hidup manusia tidak bisa lepas dari perangkat-perangkat berteknologi digital serta perangkat lunak yang ter-instail di dalamnya.  Hal ini menjadi sangat penting karena perangkat lunak memang sangat membantu aktifitas manusia menjadi lebih mudah, efisien baik waktu, tempat, tenaga, dan sebagainya, Salah satu diantaranya adalah portal media penyedia jasa informasi seperti koran atau majalah, yang sekarang telah tergantikan dengan adanya portal media online. Berbagai berita dengan berbagai rubik telah tersedia dalam bentuk web dengan berjuta-juta pembaca dan kontributor berita. Dengan kemajuan teknologi, portal media online bahkan bisa mengetahui berapa jumlah pembaca, rubik apa saja yang paling sering dibuka, dan tanggapan mereka mengenai berita melalui fitur komentar dan like atau unlike. Kecepatan dalam pembaharuan be...

Software Development Plan

Software Development Plan merupakan deskripsi dari rencana developer dalam pengembangan perangkat lunak. Software development plan atau yang selanjutnya akan kita singkat sebagai SDP, menyediakan pembagian kinerja yang sudah jelas bagi masing-masing anggota serta digunakan sebagai alat untuk memantau proses yang harus diikuti dalam pengembangan perangkat lunak. SDP juga mendeskripsikan secara detail mengenai metode dan pendekatan yang digunakan sebagai acuan dalam setiap aktivitas, organisasi, maupun sumber daya. SDP seharusnya mampu mendokumentasikan semua proses yang berlaku untuk sistem yang akan diperoleh dalam detail level yang cukup, agar SDP dapat digunakan sebagai pedoman penuh bagi para developer . Misalnya, SDP harus mengandung standar, metode, alat, dan tindakan tertentu, penggunaan ulang strategi, dan tanggung jawab yang terkait dengan pengembangan dan kualifikasi semua persyaratan, termasuk keselamatan dan keamanan. SDP dibuat oleh Project Manager u...

Manajemen Proyek Perangkat Lunak

Tidak bisa dipungkiri bahwa sekarang dunia telah berada pada era serba digital, dimana semua aspek kehidupan manusianya bergantung pada teknologi yang semakin pesat. Hal ini membuat gaya hidup manusia tidak bisa lepas dari perangkat-perangkat berteknologi digital serta "perangkat lunak" yang ter-instail di dalamnya.  Nah, yang dimaksud dengan Perangkat Lunak di sini adalah aplikasi yang tidak berwujud atau program komputer dengan sekumpulan instruksi, data, dokumentasi, dan informasi yang bisa dibaca dan ditulis oleh komputer. Hal ini menjadi begitu penting karena perangkat lunak memang sangat membantu aktifitas manusia menjadi lebih mudah, efisien baik waktu, tempat, tenaga, bahan, dan sebagainya, sehingga dapat berdampak pula pada aktifitas lainnya. Dengan begitu, siapa yang tidak mau berkecimpung di dalamnya? Bahkan pemerintah telah mencanangkan sistem US atau Ujian Sekolah akan menggunakan aplikasi digital. Dengan maraknya sistem yang serba digital, de...