- 博客(23)
- 收藏
- 关注
原创 进程间通信——信息队列
下面写了一个简单的使用消息队列进行IPC的例子,服务端程序一直在等待特定类型的消息,当收到该类型的消息以后,发送另一种特定类型的消息作为反馈,客户端读取该反馈并打印出来。如指定文件的索引节点号为65538,换算成16进制为0x010002,而你指定的ID值为38,换算成16进制为0x26,则最后的key_t返回值为0x26010002。type < 0,返回队列中消息类型值小于或等于 type 绝对值的消息,如果有多个,则取类型值最小的消息。消息队列是面向记录的,其中的消息具有特定的格式以及特定的优先级。
2023-03-13 00:46:29 77
原创 进程间通信——管道
FIFO的通信方式类似于在进程中使用文件来传输数据,只不过FIFO类型文件同时具有管道的特性。它可以看成是一种特殊的文件,对于它的读写也可以使用普通的read、write 等函数。所以,通常调用 pipe 的进程接着调用 fork,这样就创建了父进程与子进程之间的 IPC 通道。若要数据流从父进程流向子进程,则关闭父进程的读端(fd[0])与子进程的写端(fd[1]);当一个管道建立时,它会创建两个文件描述符:fd[0]为读而打开,fd[1]为写而打开。FIFO,也称为命名管道,它是一种文件类型。
2023-03-13 00:32:44 70
原创 进程间通信——概述
IPC的方式通常有管道(包括无名管道和命名管道)、消息队列、信号量、共享存储、Socket、Streams等。其中 Socket和Streams支持不同主机上的两个进程IPC。进程间通信(IPC,InterProcess Communication)是指在不同进程之间传播或交换信息。以Linux中的C语言编程为例。
2023-03-13 00:06:04 93
原创 进程——wait、waitpid的使用
父进程等待子进程退出 并收集子进程的退出状态,,子进程退出状态不被收集,变成死进程(僵尸进程)运行子进程成了僵尸进程。
2023-03-11 22:35:24 172
原创 进程——进程退出
正常退出:1、main函数调用return 2、进程调用exit(),标准库 3、进程调用_exit()或者_Exit(),属于系统调用 补充:1、进程最后一个线程返回 2、最后一个线程调用pthread_exit 异常退出:1、调用abort 2、当进程收到弄些信号时,如Ctrl+C 3、最后一个线程对取消(cancellation)请求做出响应
2023-03-11 15:22:38 109
原创 Linux文件编程“open“、“read“、“write“、“lseek“用法
Linux系统中文件编程open、write、read、lseek使用案例。
2023-02-21 19:47:15 169
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人