阅读 49

进程间通信:管道 专职C++ C++博客

  • 进程间通信:管道

    翻开高级unix编程,仔细看了一下管道,并将书中的例子修改并实现。
    虽然很简单,确揭示了多进程编程的基础。
    用管道非常真是非常的简单。以前只是看了,没有实践!

    #include <common.h>

    #define MAXLINE 256
    int main(int argc, char * argv[])
    {
        
    int fd[2]; //管道fd
        pid_t pid; //子进程的PID
        char line[MAXLINE];

        
    if( (pipe(fd) ) < 0 ) //创建PID,其中fd[0]为读管道,fd[1]为写管道
        {
            cout
    <<"pipe error"<<endl;
            exit(
    0);
        }


        
    if( (pid = fork() )<0//创建子进程
        {
            cout
    <<"fork error"<<endl; //一般是进程过多的时候才会出错
            exit(0);
        }

        
    //执行fork后,当前进程会得到子进程的pid,而子进程得到的是0,可以通过getppid()取得父进程
        if( pid > 0 )
        
    {
            
    //父进程向管道写数据
            char buffer[MAXLINE];
            close(fd[
    0]);
            cout
    <<"input:";
            cin.getline(buffer,MAXLINE);
            write(fd[
    1],buffer,strlen(buffer));
        }

        
    else
        
    {
            
    //子进程接收数据
            close(fd[1]);
            
    int n = read(fd[0],line,MAXLINE);
            line[n] 
    = 0;
            cout
    <<"read message:"<<line<<endl;
        }


        
    return 0;
    }


  • 相关阅读:
    [十二省联考2019]字符串问题:后缀数组+主席树优化建图
    HAOI2018简要题解
    使用单调队列维护决策三元组实现决策单调性优化DP的一些细节
    杜教筛&min_25筛复习
    分治NTT:我 卷 我 自 己
    高级(并不)多项式算法总结
    导数与微分简单总结(updated)
    退役前的做题记录
    USACO2018DEC PLATINUM
    USACO2018DEC GOLD

  • 原文地址:https://www.cnblogs.com/lexus/p/2622517.html

  • 最新文章

  • 字符串算法小结
    [CF1172E]Nauuo and ODT:Link-Cut Tree
    死难写的模板合集(其实就一个)
    [AGC034D]Manhattan Max Matching:费用流
    [LOJ3120][CTS2019|CTSC2019]珍珠:生成函数+NTT
    [LOJ3124][CTS2019|CTSC2019]氪金手游:树形DP+概率DP+容斥原理
    CTS2019&APIO2019爆炸记
    [LOJ3119][CTS2019|CTSC2019]随机立方体:组合数学+二项式反演
    奇数与偶数的指数生成函数
    [LOJ6433][PKUSC2018]最大前缀和:状压DP

  • 热门文章

  • 生成函数的背包计数问题
    [LOJ2538][PKUWC2018]Slay the Spire:DP
    [洛谷P5361][SDOI2019]热闹又尴尬的聚会:构造题
    [VIJOS2053][SDOI2019]世界地图:最小生成树+虚树
    退役前的做题记录2.0
    [VIJOS2055][SDOI2019]移动金币:DP+组合数学
    [LOJ3046][ZJOI2019]语言:树链的并+线段树合并
    [LOJ3109][TJOI2019]甲苯先生的线段树:DP
    [LOJ3106][TJOI2019]唱、跳、rap和篮球:DP+生成函数+NTT+容斥原理
    SXOI2019垫底记



文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐