İşletim Sistemleri (Bahar-2016) Hafta-5/2
Thread ile asal sayılar:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
#include<iostream> #include<unistd.h> #include<pthread.h> using namespace std; void * islem1(void *arg) { cout<<"THREAD BASLADI!!::1"<<endl; for(int sayi=100;sayi<2000;sayi++) { int sayac=0; for(int i=2;i<(sayi/2);i++) { if(sayi%i==0) { sayac++; break; } } if(sayac==0) cout<<"::1::"<<sayi<<" asaldir"<<endl; } pthread_exit(0); } void * islem2(void *arg) { cout<<"THREAD BASLADI!!::2"<<endl; for(int sayi=3000;sayi<9000;sayi++) { int sayac=0; for(int i=2;i<(sayi/2);i++) { if(sayi%i==0) { sayac++; break; } } if(sayac==0) cout<<"::2::"<<sayi<<" asaldir"<<endl; } pthread_exit(0); } int main() { pthread_t iplik1,iplik2; cout<<"PROC ID:"<<getpid()<<endl; pthread_create(&iplik1,NULL,islem1,NULL); pthread_create(&iplik2,NULL,islem2,NULL); cout<<"THREAD BEKLE"<<endl; pthread_join(iplik1,NULL); pthread_join(iplik2,NULL); cout<<"ANA PROC SONLANDI"<<endl; } |
Okumaya devam et
Son Yorumlar