Dokumen tersebut membahas tentang multithreading dan thread pools. Multithreading memungkinkan beberapa tugas dieksekusi secara bersamaan menggunakan satu CPU, sementara thread pools digunakan untuk mengelola thread di server web agar tidak terlalu banyak thread dibuat sekaligus.
2. • Berjalan nya waktu dan tuntutan teknologi yang
berkembang di era modern ditemukan kelemahan pada
proses yang sebenar nya bisa diminimalisir. Yaitulah
diciptakan THREAD.
• Thread merupakan cara dari komputer untuk
menjalankan dua atau lebih task dalam waktu
bersamaan
3. • Thread terdiri dari ID thread, program counter,himpunan
register dan stack.
• Thread bekerja sama dengan thread lain dalam
penggunaan bagian kode, bagian data, dan resource.
Penggunaan thread CPU dapat secara ekstensif di
antara peer thread tanpa menggunakan manajemen
memori.
• Keuntungan penggunaan thread yaitu
Tanggap, Pemberdayaan
resorce, Ekonomis, Pemberdayaan arsitektur
multiprocessor.
4. • multithreading adalah cara komputer untuk membagi-
bagi pekerjaan yang dikerjakan sebagian-sebagian
dengan cepat sehingga menimbulkan efek seperti
menjalakan beberapa task secara bersamaan walaupun
otaknya hanya satu.
• Multithreading adalah cara pengeksekusian yang
mengizinkan beberapa thread terjadi dalam sebuah
proses, saling berbagi sumber daya tetapi dapat
dijalankan secara independen.
5. 1. Responsif : Aplikasi interaktif menjadi tetap responsif meskipun sebagian dari
program sedang diblok atau melakukan operasi lain yang panjang. Umpamanya, sebuah
thread dari web browser dapat melayani permintaan pengguna sementara thread yang
lain berusaha menampilkan gambar.
2. Berbagi Sumber Daya :Beberapa thread yang melakukan proses yang
sama akan berbagi sumber daya. Keuntungannya adalah mengizinkan sebuah aplikasi
untuk mempunyai beberapa thread yang berbeda dalam lokasi memori yang sama.
3. Ekonomis : Pembuatan sebuah proses memerlukan pengalokasian memori dan
sumber daya. Alternatifnya adalah dengan menggunakan thread, karena thread membagi
memori dan sumber daya yang dimilikinya sehingga lebih ekonomis untuk membuat
thread.
4. Utilisasi arsitektur multiprosesor : Keuntungan dari multithreading
dapat sangat meningkat pada arsitektur multiprosesor, dimana setiap thread dapat
berjalan secara paralel di atas procesor yang berbeda.
6.
7.
8. • Computer Computer
(A) (B)
Process Thread Program
Counter
9. • Thread Menjalankan satu Tugas dalam satu waktu
• Multithread menjalankan beberapa pekerjaan dalam satu
waktu
10. • Pada web server yang multithreading ada dua masalah yang timbul:
a. Ukuran waktu yang diperlukan untuk menciptakan thread yang
melayani permintaan yang diajukan pada kenyataannya thread
dibuang seketika sesudah ia menyelesaikan tugasnya.
b. Pembuatan thread yang tidak terbatas jumlahnya dapat
menurunkan performa dari sistem.
Solusinya adalah dengan penggunaan Thread Pools. Cara kerjanya
adalah dengan membuat beberapa thread pada proses startup dan
menempatkan mereka ke pools, dimana mereka duduk diam dan
menunggu untuk bekerja. Jadi, ketika server menerima permintaan, ia
akan membangunkan thread dari pool dan jika thread tersedia maka
permintaan tersebut akan dilayani.
Ketika thread sudah selesai mengerjakan tugasnya maka ia kembali ke
pool dan menunggu pekerjaan lainnya. Bila tidak ada thread yang
tersedia pada saat dibutuhkan maka server menunggu sampai ada
satu thread yang bebas.