XWOS API  4.0
XWOS C/C++ API参考手册
载入中...
搜索中...
未找到
xwmm_mempool_objcache结构体 参考

对象缓存 更多...

#include <objcache.h>

xwmm_mempool_objcache 的协作图:

成员变量

struct xwmm_mempool_i_allocator i_a
 
struct xwmm_mempool_page_allocatorpa
 
const char * name
 
xwsz_t objsize
 
xwsz_t alignment
 
xwsq_t pg_order
 
xwsz_t pg_objnr
 
xwptr_t backup
 
ctor_f ctor
 
dtor_f dtor
 
atomic_xwsz_t capacity
 
atomic_xwsz_t idleness
 
atomic_xwsz_t reserved
 
struct { 
 
   struct xwlib_bclst_node   full 
 
   struct xwlib_bclst_node   available 
 
   struct xwlib_bclst_node   idle 
 
   struct xwos_sqlk   lock 
 
page_list 
 

详细描述

对象缓存

在文件 objcache.h34 行定义.

结构体成员变量说明

◆ alignment

xwsz_t xwmm_mempool_objcache::alignment

对齐的大小

在文件 objcache.h39 行定义.

◆ available

struct xwlib_bclst_node xwmm_mempool_objcache::available

还有剩余对象未分配的页链表

在文件 objcache.h56 行定义.

◆ backup

xwptr_t xwmm_mempool_objcache::backup

备份值:

  • 每个对象的第一段内存字(word)用作无锁队列的 链表指针,当分配卡片时,用备份值恢复;
  • 所有对象初始化后的第一个字(word)必须相同, 以保证备份值唯一。

在文件 objcache.h42 行定义.

◆ capacity

atomic_xwsz_t xwmm_mempool_objcache::capacity

总的对象数量

在文件 objcache.h50 行定义.

◆ ctor

ctor_f xwmm_mempool_objcache::ctor

构造函数

在文件 objcache.h48 行定义.

◆ dtor

dtor_f xwmm_mempool_objcache::dtor

析构函数

在文件 objcache.h49 行定义.

◆ full

struct xwlib_bclst_node xwmm_mempool_objcache::full

对象已完全被分配的页链表

在文件 objcache.h55 行定义.

◆ i_a

struct xwmm_mempool_i_allocator xwmm_mempool_objcache::i_a

implements xwmm_mempool_i_allocator

在文件 objcache.h35 行定义.

◆ idle

struct xwlib_bclst_node xwmm_mempool_objcache::idle

未使用的页链表

在文件 objcache.h57 行定义.

◆ idleness

atomic_xwsz_t xwmm_mempool_objcache::idleness

空闲的对象数量

在文件 objcache.h51 行定义.

◆ lock

struct xwos_sqlk xwmm_mempool_objcache::lock

页链表锁

在文件 objcache.h58 行定义.

◆ name

const char* xwmm_mempool_objcache::name

名字

在文件 objcache.h37 行定义.

◆ objsize

xwsz_t xwmm_mempool_objcache::objsize

对象大小

在文件 objcache.h38 行定义.

◆ pa

struct xwmm_mempool_page_allocator* xwmm_mempool_objcache::pa

页分配器

在文件 objcache.h36 行定义.

◆ [struct]

struct { ... } xwmm_mempool_objcache::page_list

页链表

◆ pg_objnr

xwsz_t xwmm_mempool_objcache::pg_objnr

每一页中可容纳多少对象

在文件 objcache.h41 行定义.

◆ pg_order

xwsq_t xwmm_mempool_objcache::pg_order

每次申请的页的数量的阶(2的n次方)

在文件 objcache.h40 行定义.

◆ reserved

atomic_xwsz_t xwmm_mempool_objcache::reserved

保留的对象数量

在文件 objcache.h52 行定义.


该结构体的文档由以下文件生成: