mirror of
https://github.com/riba2534/TCP-IP-NetworkNote.git
synced 2026-06-30 09:56:04 +08:00
完成了第 11 章 进程间通信
This commit is contained in:
30
ch11/pipe2.c
Normal file
30
ch11/pipe2.c
Normal file
@@ -0,0 +1,30 @@
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
#define BUF_SIZE 30
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
int fds[2];
|
||||
char str1[] = "Who are you?";
|
||||
char str2[] = "Thank you for your message";
|
||||
char buf[BUF_SIZE];
|
||||
pid_t pid;
|
||||
|
||||
pipe(fds);
|
||||
pid = fork();
|
||||
if (pid == 0)
|
||||
{
|
||||
write(fds[1], str1, sizeof(str1));
|
||||
sleep(2);
|
||||
read(fds[0], buf, BUF_SIZE);
|
||||
printf("Child proc output: %s \n", buf);
|
||||
}
|
||||
else
|
||||
{
|
||||
read(fds[0], buf, BUF_SIZE);
|
||||
printf("Parent proc output: %s \n", buf);
|
||||
write(fds[1], str2, sizeof(str2));
|
||||
sleep(3);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user