POSIX共享内存

本文详细介绍POSIX系统中的四个关键函数:shm_open用于创建或打开共享内存,ftruncate调整其大小,fstat获取对象信息,而shm_unlink则用于删除共享内存。这些函数在多进程协作中扮演重要角色。
摘要由CSDN通过智能技术生成

1.POSIX共享内存相关函数

1.1 shm_open函数

  • 功能,用来创建或打开一个共享内存对象
  • 原型
int shm_open(const char *name, int oflag, mode_t mode);
//name:共享内存对象的名字
//oflag:与open函数类似,可以是O_RDONLY、O_RDWR,还可以按位或上O_CREAT、O_EXCL、O_TRUNC等。
//mode:此参数总是需要设置,如果oflag没有指定了O_CREAT,可以指定为0
  • 返回值,成功返回非负整数文件描述符,失败返回-1

1.2 ftruncate函数

  • 功能,修改共享内存对象大小
  • 原型
int ftruncate(int fd, off_t length);
//fd:文件描述符
//length:长度
  • 返回值,成功返回0,失败返回-1

1.3 fstat函数

  • 功能,获取共享内存对象信息
  • 原型
int fstat(int fd, struct stat *buf);
//fd:文件描述符
//buf:返回共享内存状态

在这里插入图片描述

  • 返回值,成功返回0,失败返回-1

1.4 shm_unlink函数

  • 功能,删除一个共享内存对象
  • 原型
int shm_unlink(const char *name);
//name:共享内存对象的名字
  • 返回值,成功返回0,失败返回-1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值