... *************** *** 1464,1470 **** } // free at & xtree ! free(at); xtree_free(xt); // restore the offset --- 1467,1474 ---- } // free at & xtree ! if (at != NULL) ! free(at); xtree_free(xt); ...
该问题位于xdb.c文件的_xdb_to_xtree_node函数 buf = (unsigned char *) malloc(ptr->len + 1); _xdb_read_data(x, buf, ptr->off, ptr->len);//这里590行 /* save the key & value -> xtree */ voff = buf[16] + 17; 第590行,当_xdb_read_data文件读取失败时(如果offset超过文...
...、SCWS_XDICT_MEM (这表示将 xdb 文件全部加载到内存中,以 XTree 结构存放)。具体用哪种方式需要根据自己的实际应用来决定。[b]当使用本库做为 daemon server 时应当使用 mem 方式,当只是 embed 调用时应该使用 xdb 方式[/b],将 xdb 文...
...+ Builder下编译成动态链接库,对源码做了以下处理: 1、xtree.c里,对qsort的调用做了以下处理: #ifdef __BORLANDC__ static int _xtree_node_cmp(const void *a,const void *b) { return strcmp((*((node_t *)a))->key,(*((node_t *)b))->key); } #else #ifdef WIN32 static...
...rset.lo crc32.lo pool.lo scws.lo xdict.lo darray.lo rule.lo lock.lo xdb.lo xtree.lo /usr/lib/gcc/i686-pc-cygwin/4.3.4/../../../libcygwin.a(libcmain.o):(.text+0xa9): undefined reference to `_WinMain@16' collect2: ld returned 1 exit status make[2]: *** [libscws.la] Error 1 make[2]: Leaving directo...
...rset.lo crc32.lo pool.lo scws.lo xdict.lo darray.lo rule.lo lock.lo xdb.lo xtree.lo /usr/lib/gcc/i686-pc-cygwin/4.3.4/../../../libcygwin.a(libcmain.o):(.text+0xa9): undefined reference to `_WinMain@16' collect2: ld returned 1 exit status make[2]: *** [libscws.la] Error 1 make[2]: Leaving directo...
xdb 就是一个自己设计的用来保存常量数据库(基本上只读少改)文件格式,类似 gdbm, cdb 这些格式 xtree 是一个HASH + tree 的内存数据结构,可以方便的和 xdb 进行互换
...个词典load到内存需要一些时间的(不光读取还要转换成xtree结构)