- Back to Home »
- Linux »
- Thread dan Manfaatnya
Posted by : Unknown
Rabu, 19 November 2014
Berbeda dengan proses, thread berjalan secara asinkronUs sementara proses berjalan secara sinkronus. Sementara untuk keuntungan menggunakan thread adalah * Tanggap: Multi-threading mengizinkan program untuk terus berjalan walaupun pada bagian program tersebut diblock atau sedang dalam keadaan menjalankan operasi yang lama/panjang. Contohnya multithread web browser dapat mengizinkan pengguna berinteraksi dengan suatu thread ketika suatu gambar sedang diload oleh thread yang lain.
- Pembagian sumber daya: Secara default, thread membagi memori dan sumber daya dari proses. Keuntungan dari pembagian kode adalah aplikasi mempunyai perbedaan aktifitas thread dengan alokasi.
- Ekonomis: Mengalokasikan memori dan sumber daya untuk membuat proses itu sangat mahal. Alternatifnya thread membagi sumber daya dari proses, Jadi lebih ekonomis.
- Pemberdayaan arsitektur multiprosesor: Keuntungann dari multithreading dapat ditingkatkan dengan arsitektur multiprosesor, dimana setiap thread dapat berjalan secara parallel pada prosesor yang berbeda. Pada arsitektur prosesor tunggal, CPU biasanya berpindah-pindah antara setiap thread dengan cepat, sehingga terdapat ilusi paralelisme, tetapi pada kenyataannya hanya satu thread yang berjalan di setiap waktu.
#include<pthread.h>
#include<stdio.h>
void *read(void *ptr);
void *player(void *ptr);
int main ()
{
pthread_t tid1, tid2;
pthread_create(&tid1,NULL,&read,NULL);
pthread_create(&tid2,NULL,&player,NULL);
pthread_join(tid2,NULL);
return 0;
}
void *read(void * ptr)
{
char msg[100];
while(1){
fgets(msg,100,stdin);
printf("%s\n",msg);
}
return NULL;
}
void *player(void *ptr)
{
system("cvlc /home/ghulamfajri/Desktop/iris.mp3");
return 0;
}