Ariya Hidayat wrote: > > > dimana saya bisa mendapatkan tutorial mengenai multithreading dan mutex ?? > > http://centaurus.cs.umass.edu/~wagner/threads_html/tutorial.html > http://www-106.ibm.com/developerworks/library/posix1.html > > BTW, saya termasuk yang yakin & percaya bahwa solusi dengan thread adalah > PITA, dan hanya masuk akal jika tidak ada cara lain yang lebih indah dan > elegan. Untuk non-blocking socket, penggunaan select() sudah sangat > mencukupi. Lihat misalnya http://www.ecst.csuchico.edu/~beej/guide/net/
boleh tahu kenapa PITA? Bukannya setiap cara (fork, I/O multiplexing, multithreading), ada kelebihan dan kekurangan masing2? Utk multithreading mungkin kesulitannya terutama mengontrol concurrent akses ke shared resource. Sebaliknya di I/O multiplexing ngga ada masalah seperti itu, tapi dia bound ke 1 CPU (aplikasi perlu nge-fork kalo mau manfaatin CPU ke-2 dst), lalu dia juga perlu I/O non-blocking. Utk kebanyakan aplikasi mungkin yg terakhir ini bukan masalah, tapi kadang2 ketemu juga. Belum lama saya perlu bikin aplikasi yg perlu parsing sejumlah remote XML files secara parallel. Karena pake Perl (yg multithreading-nya masih tanggung), saya coba pake I/O multiplexing, utk kemudian pusing cari cara gimana parsing + validasi XML secara non blocking. Akhirnya balik ke fork lagi. Mungkin ada triknya tapi saya gak tahu. Ini ada contoh lain lagi tentang masalah non-blocking I/O di https: http://www.mail-archive.com/[email protected]/msg00925.html karena beberapa select-based httpd support https, maka sepertinya ada triknya juga utk ini. Yg jelas sih ngga dead-simple :-) -- rgds, Edwin -- Utk berhenti langganan, kirim email ke [EMAIL PROTECTED] Informasi arsip di http://www.linux.or.id/milis.php3
