Linux C进程间通信(IPC,Inter-Process Communication)是指在Linux操作系统中,不同的进程之间交换数据和信息的方式。进程间通信是并发编程中的一个重要概念,它允许进程之间协同工作,共享数据,实现进程之间的同步和互斥。
进程间通信主要包括以下几种类型:
#include <sys/ipc.h>
#include <sys/shm.h>
#include <stdio.h>
int main() {
key_t key = ftok("shmfile", 'R'); // 生成key
int shmid = shmget(key, 1024, 0644 | IPC_CREAT); // 创建共享内存
char *str = (char*) shmat(shmid, (void*)0, 0); // 将共享内存附加到进程地址空间
sprintf(str, "Hello World!"); // 写入数据
printf("Data written in memory: %s
", str);
shmdt(str); // 分离共享内存
shmctl(shmid, IPC_RMID, NULL); // 删除共享内存
return 0;
}
这段代码展示了如何在Linux C中使用共享内存进行进程间通信的基本步骤。
领取专属 10元无门槛券
手把手带您无忧上云