Bu yazımda kill komutunu açıklayıp, örnek yapacağım.
Komutumuz kullanma şekli ; kill(pid_t pid, int sinyal)
İlk parametre proses bilgisini tutar. İkinci parametre yapılmak istenen sinyalin yazıldığı durumdur. Kullanabileceğimiz bazı komutlar:
kill(proc_id, SIGSTOP); —> İlgili prosesi durdurur.
kill(proc_id, SIGTERM); —> Öldürme, sonlandırma.
kill(proc_id, SIGCONT); —> Koda devam eder.
CMD iken duran kod için kill -9 3295 yazılması o kodun normal şekilde sonlaması sağlar.
#include<iostream> #include<unistd.h> #include<sys/wait.h> using namespace std; int main() { pid_t proc_id; int durum; cout<<"Basla::"<<getpid()<<endl; proc_id=fork(); if(proc_id==0) { cout<<"Ben Cocuk!::"<<getpid()<<endl; sleep(10); } else { cout<<"Ben Anne::"<<getpid()<<" Cocugun id::"<<proc_id<<endl; //kill(proc_id,SIGTERM); kill(proc_id,SIGSTOP); sleep(5); kill(proc_id,SIGCONT); waitpid(proc_id,&durum,0); cout<<"Sonlanma::"<<durum<<endl; } return 0; }
Çıktı :
Basla::3292
Ben Anne::3292 Cocugun id::3294
Ben Cocuk!::3294
Sonlanma::0
Bu yazı yorumlara kapalı.