Page 45 - E-MODUL SISTEM TERDISTRIBUSI_Neat
P. 45
Adapun Perbedaan antara proses dengan thread tunggal dengan proses dengan
thread yang banyak adalah proses dengan thread yang banyak dapat mengerjakan
lebih dari satu tugas pada satu satuan waktu.
Gambar 3.1 Thread
Dengan menggunakan multithreading, sebuah web server dapat membuat
thread yang akan mendengarkan permintaan dari klien. Ketika permintaan lain
diajukan, web server dapat membuat thread baru yang akan melayani permintaan
tersebut. Dengan demikian, web server dapat melayani banyak klien secara
bersamaan dan mengoptimalkan penggunaan sumber daya. Namun, dalam
mengimplementasikan multithreading, perlu diperhatikan bahwa thread-thread
tersebut harus diatur dengan baik dan tidak saling mengganggu satu sama lain
dalam mengakses sumber daya seperti memori dan I/O. Kondisi race, deadlocks,
dan konflik akses sumber daya lainnya dapat terjadi jika multithreading tidak
diatur dengan baik, dan dapat menyebabkan aplikasi menjadi tidak stabil dan
44