Линукс межпроцессного взаимодействия
Я хочу общаться между дочерним процессом и родительским процессом, но это не работает .
Дочерняя функция только выполняется и не переходит в родительскую функцию
Что я уже пробовал:
#include<stdio.h> #include<unistd.h> #include<sys/types.h> #include<sys/wait.h> int main(int argc, char const *argv[]) { int _pipe[2]; char arr[30]; int pid; pipe(_pipe); pid=fork(); if(pid==0) { while(1) { write(_pipe[1],"Hello world",100); printf("child process\n"); sleep(1); } } else if(pid>0) { wait(NULL); while(1) { printf("parent process\n"); read(_pipe[0],arr,sizeof(arr)); printf("%s",arr); sleep(1); } } return 0; }
Richard MacCutchan
Видите ли вы какие-либо выходные данные из родительского процесса?