亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

進程間雙向通信--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

凤庆县| 谢通门县| 四子王旗| 昌吉市| 建平县| 藁城市| 临清市| 蓝山县| 宣汉县| 南开区| 峨边| 瑞金市| 琼结县| 正镶白旗| 房山区| 娄底市| 土默特右旗| 息烽县| 农安县| 通城县| 始兴县| 确山县| 大冶市| 增城市| 永川市| 邹城市| 灌阳县| 横峰县| 老河口市| 临湘市| 隆化县| 六枝特区| 尚义县| 油尖旺区| 澄城县| 铜梁县| 无为县| 英吉沙县| 六盘水市| 额尔古纳市| 通州区|