zoukankan      html  css  js  c++  java
  • linux进程间通讯

    1. pipe系统调用的使用格式

    #include<unistd.h>

    int pipe(int fd[2])

    功能:创建一个简单的管道,若成功则为数组fd分配两个文件描述符,其中fd[0]用于读取管道,fdp[1]用于写入管道。

    返回值:成功返回0,失败返回-1。

     

    2. 命名管道:mkfifo系统调用的使用格式:

    #include<sys/types.h>

    #include<sys/stat.h>

    功能:创建命名管道

    返回:若成功则为0,若出错则为-1.

     

    3.信号量:

    semget()系统调用的使用格式:

    #include<sys/sem.h>

    功能:创建一个新的信号量或取得一个新的键值

    返回值:成功返回信号量标志码,失败返回-1。

     

    semop()系统调用的使用格式:

    #include<sys/sem.h>

    功能:用户改变信号量的值。

    返回值:成功返回0,否则-1.

     

    4.共享内存

    shmget()系统调用的使用格式:

    #include<sys.shm.h>

    功能:创建共享内存。

    返回值:成功返回共享内存标识码,失败返回-1.

     

    shmat()的使用格式:

    #include<sys.shm.h>

    功能:允许进程访问一块共享内存(共享内存刚创建时不能使用)。

    返回值:成功返回共享内存的起始地址,失败返回-1.

     

    shmdt()的使用格式:

    #include<sys/shm.h>

    功能:释放共享内存。

    返回值:成功时返回0.失败时返回-1.

     

    shmctl()的使用方法:

    #include<sys/shm.h>

    功能:共享内存控制函数。

    返回值:成功返回0,失败返回-1。

     

    5.消息队列:

    msgget()的使用格式:

    #include<sys/types.h>

    #include<sys/ipc.h>

    #include<sys/msg.h>

    功能:创建一个新的消息队列,或者希望存取一个已经存在的消息队列。

    返回值:成功返回消息队列标识符,失败返回-1.

     

    msgsnd()的头文件:

    #include<sys/types.h>

    #include<sys/ipc.h>

    #include<sys/msg.h>

    功能:往队列中发送一条消息。

    返回值:成功返回0,错误返回-1.

     

    msgrcv()的头文件:

    #include<sys/types.h>

    #include<sys/ipc.h>

    #include<sys/msg.h>

    功能:读取消息,从消息队列中取走消息

    返回值:成功返回0,错误返回-1.

     

    msgctl()的头文件:

    #include<sys/types.h>

    #include<sys/ipc.h>

    #include<sys/msg.h>

    功能:对消息队列的操作

    返回值:成功返回0,错误返回-1.

     

    6. 信号与信号机制

    signal函数的头文件:

    #include<signal.h>


    转载http://www.cnblogs.com/auleaf/archive/2011/09/19/2180944.html

    有梦想就不会觉得苦.Do you know what is the glittering life?

  • 相关阅读:
    好的软件架构设计(转)
    利用ManualResetEvent来来控制异步调用的打印的线程的暂停和恢复(转)
    Lucene.Net+盘古分词器(详细介绍)(转)
    如何让 height:100%; 起作用---父级元素必须设定高度
    前端问题汇总
    JS基础_强制类型转换-Number
    CSS实现垂直居中的常用方法
    vue项目上线步骤
    一篇文章全面了解运维监控知识体系
    vue+axios 前端实现登录拦截(路由拦截、http拦截)
  • 原文地址:https://www.cnblogs.com/zhiweiyouzhishenghuo/p/5005514.html
Copyright © 2011-2022 走看看