c waitpid code example
Example 1: c waitpid
#include <sys/types.h>
#include <sys/wait.h>
pid_t wait(int *status);
pid_t waitpid(pid_t pid, int *status, int options);
Example 2: example code of waitpid
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdlib.h>
#include <errno.h>
#include <sys/wait.h>
#include <string.h>
int main(){
int pid;
int status;
pid =fork();
if(pid<0){
printf("Error");
}
else if(pid==0){
for(int i=0;i<100;i++){
value-=1;
printf("%d \n",value);
}
exit(EXIT_SUCCESS);
}
waitpid(pid,&status,0);
for(int i=0;i<100;i++){
value-=1;
printf("%d \n",value);
}
printingFunction();
if (WIFSIGNALED(status)){
printf("Error\n");
}
else if (WEXITSTATUS(status)){
printf("Exited Normally\n");
}
return 0;
}
}
Example 3: C delay
#include <time.h>
void dealy(int numOfSec)
{
int numOfMilliSec = 1000 * numOfSec;
time_t startTime = clock();
while(clock() < startTime + numOfMilliSec);
}
#include <time.h>
void delay(int numOfSec)
{
int numOfMilliSec = 1000 * numOfSec;
time_t startTime = clock();
while(clock() < startTime + numOfMilliSec);
}