Sese Framework  x.y.z
A cross-platform framework
载入中...
搜索中...
未找到
sese::system::SharedMemory类 参考final

共享内存类 更多...

#include <SharedMemory.h>

Public 类型

using Ptr = std::unique_ptr<SharedMemory>
 

Public 成员函数

 ~SharedMemory () noexcept
 析构函数
 
void * getBuffer () noexcept
 

静态 Public 成员函数

static SharedMemory::Ptr create (const char *name, size_t size) noexcept
 
static Result< PtrcreateEx (const char *name, size_t size) noexcept
 
static SharedMemory::Ptr use (const char *name) noexcept
 
static Result< PtruseEx (const char *name) noexcept
 

Private 成员函数

 SharedMemory ()=default
 

静态 Private 成员函数

static key_t name2key (const char *name) noexcept
 

Private 属性

int id {}
 
void * buffer = nullptr
 
bool isOwner {}
 

详细描述

共享内存类

成员类型定义说明

◆ Ptr

构造及析构函数说明

◆ ~SharedMemory()

SharedMemory::~SharedMemory ( )
noexcept

析构函数

引用了 buffer , 以及 isOwner.

◆ SharedMemory()

sese::system::SharedMemory::SharedMemory ( )
privatedefault

成员函数说明

◆ create()

SharedMemory::Ptr SharedMemory::create ( const char * name,
size_t size )
staticnoexcept

创建一块共享内存

参数
name共享内存名称
size共享内存大小
返回
共享内存对象指针
返回值
nullptr创建失败

引用了 MAKE_UNIQUE_PRIVATE.

被这些函数引用 sese::system::IPCChannel::create().

◆ createEx()

sese::Result< sese::system::SharedMemory::Ptr > sese::system::SharedMemory::createEx ( const char * name,
size_t size )
staticnoexcept

◆ getBuffer()

void * SharedMemory::getBuffer ( )
noexcept

获取共享内存实际地址

返回
共享内存块

引用了 buffer.

◆ name2key()

key_t SharedMemory::name2key ( const char * name)
staticprivatenoexcept

◆ use()

SharedMemory::Ptr SharedMemory::use ( const char * name)
staticnoexcept

使用一块现有的共享内存

参数
name共享内存名称
返回
共享内存对象指针
返回值
nullptr获取失败

引用了 MAKE_UNIQUE_PRIVATE.

被这些函数引用 sese::system::IPCChannel::use().

◆ useEx()

sese::Result< sese::system::SharedMemory::Ptr > sese::system::SharedMemory::useEx ( const char * name)
staticnoexcept

类成员变量说明

◆ buffer

void* sese::system::SharedMemory::buffer = nullptr
private

被这些函数引用 getBuffer() , 以及 ~SharedMemory().

◆ id

int sese::system::SharedMemory::id {}
private

◆ isOwner

bool sese::system::SharedMemory::isOwner {}
private

被这些函数引用 ~SharedMemory().


该类的文档由以下文件生成: