jimi-wzq
2021-01-12 48e47110397c894716525db219e53300c08f64dd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/**
 * @file
 * 
 * @brief 负责共享内存的创建与销毁
 *
 */
 
#ifndef __SHM_MM_H__
#define __SHM_MM_H__
 
#ifdef __cplusplus
extern "C" {
#endif
    
/**
 * @brief 创建并初始化共享内存
 * @param size 共享内存大小, 单位M
 * @details 在进入main方法的时候执行该方法,每个进程只需要调用一次 
 */
void shm_mm_wrapper_init(int size);
 
/**
 * @brief 销毁共享内存
 * @details 整个进程退出时需要执行这个方法,该方法首先会检查是否还有其他进程在使用该共享内存,如果还有其他进程在使用就只是detach,如果没有其他进程在使用则销毁整块内存。
 */
void shm_mm_wrapper_destroy();
 
 
/**
 * @brief 分配一个key给申请者
 * @return key值
 */
int shm_mm_wrapper_alloc_key();
 
 
#ifdef __cplusplus
}
#endif
 
#endif