Posted on 2010-11-01 14:20
S.l.e!ep.¢% 阅读(1309)
评论(0) 编辑 收藏 引用 所属分类:
FastDB
最近要研究FastDB在内存模式下的性能,但不知道如何使用它的无盘模式。
网上的说法是在config.h文件中有去掉#define DISKLESS_CONFIGURATION 1 项的注释
这样的话,调整inc/database.h 文件里的容量
#ifdef DISKLESS_CONFIGURATION
// In diskless confiuration database can not be reallocated
const size_t dbDefaultInitDatabaseSize = 32*1024*1024;
#else
const size_t dbDefaultInitDatabaseSize = 1024*1024;
#endif
但具体如何操作还不是很明白,而且在open数据库时,函数为:
bool dbDatabase::open(char_t const* dbName, char_t const* fiName,
time_t waitLockTimeoutMsec, time_t commitDelaySec)
如何可以表示为内存模式,而sqlite就可以用":memory:"的方式?
希望各位大虾帮小弟一把。
内存模式就是靠DISKLESS_CONFIGURATION来控制的
代码中,默认这个开关是关闭的,即注释掉的
//DISKLESS_CONFIGURATION - only in-memory temporary database
//#define DISKLESS_CONFIGURATION 1
那么你把这个注释//给去掉,然后重新编一下fastdb就可以了