中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

進程間雙向通信--sockpair

發布時間:2020-08-01 20:49:31 來源:網絡 閱讀:382 作者:小鎮青苔 欄目:網絡安全


sockpair是一個套接字,可以用于網絡通信,也可用于本機內進程間通信。

sockpair類似于管道,只不過管道是用于單向通信的,只能一方讀,一方寫,。而想要用于進程間雙向通信,就要pipe兩次,創建兩個管道。sockpair直接就可以實現進程間雙向通信。

    1 #include<stdio.h>
  2 #include<unistd.h>
  3 #include<stdlib.h>
  4 #include<string.h>
  5 #include<sys/types.h>
  6 #include<sys/socket.h>
  7 int main()
  8 {
  9     int fd[2]={0,0};
 10     int sock = socketpair(AF_LOCAL,SOCK_STREAM,0,fd);
 11     if(sock<0)
 12     {
 13         perror("socketpair");
 14         exit(1);
 15     }
 16     pid_t id = fork();
 17     if(id<0)
 18     {
 19         perror("fork");
 20         exit(2);
 21     }
 22     else if(id == 0)
 23     {
 24         close(fd[0]);
 25         char buf[1024];
 26         while(1)
 27         {
 28             memset(buf,'\0',sizeof(buf));
 29             strcpy(buf,"hello world");
 30             write(fd[1],buf,sizeof(buf)-1);
 31             read(fd[1],buf,sizeof(buf)-1);
 32             sleep(1);
 33             printf("father say:%s\n",buf);
 34         }
 35         close(fd[1]);
 36     }
 37     else
 38     {
 39         close(fd[1]);
 40         char buf[1024];
 41         while(1)
 42         {
 43             read(fd[0],buf,sizeof(buf)-1);
 44             printf("child say:%s\n",buf);
 45             memset(buf,'\0',sizeof(buf));
 46             strcpy(buf,"nihao");
 47             write(fd[0],buf,sizeof(buf)-1);
 48             sleep(1);
 49         }
 50         close(fd[0]);
 51     }
 52     return 0;
 53 }
 
 [fbl@localhost socketpair]$ ./my_pair 
child say:hello world
father say:nihao
child say:hello world
father say:nihao
child say:hello world
father say:nihao
child say:hello world





向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

九寨沟县| 商河县| 安阳市| 公安县| 贞丰县| 沁水县| 南川市| 碌曲县| 新郑市| 涿州市| 巨野县| 西贡区| 嘉定区| 江津市| 台江县| 乐东| 鄂托克前旗| 双桥区| 广元市| 瑞丽市| 定兴县| 伊宁县| 封开县| 常德市| 昭通市| 鄢陵县| 锦州市| 门源| 平顺县| 商洛市| 海丰县| 苏州市| 塔河县| 甘肃省| 阳西县| 读书| 蓬溪县| 隆林| 建瓯市| 金堂县| 堆龙德庆县|