İşletim Sistemleri (Bahar-2016) Hafta-11/1
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 |
#include<iostream> #include<signal.h> #include<pthread.h> #include<sys/syscall.h> #include <unistd.h> using namespace std; void yakala(int sinyaltipi) { cout<<"Sinyali yakalayan iplik:"<<syscall(SYS_gettid)<<"--"<<endl; } void * iplik_islem(void *arg) { cout<<"Kimligim:"<<syscall(SYS_gettid)<<"--"<<endl; } int main() { pthread_t iplik[2]; int i; cout<<"Program:: sinyal yakala"<<endl; signal(SIGINT,&yakala); cout<<"Program:: create"<<endl; for(i=0;i<2;i++) pthread_create(&iplik[i],NULL,iplik_islem,NULL); cout<<"Program:: SIGINT iplik[0]"<<endl; pthread_kill(iplik[0],SIGINT); cout<<"Program:: join"<<endl; for(i=0;i<2;i++) pthread_join(iplik[i],NULL); } . |
Terminalde derlemek için: g++ ornek1.cpp -o ornek1 -pthread