...调用时, $so->set_dict(ini_get("scws.default.fpath")."/dict.utf8.xdb",SCWS_XDICT_MEM); 如果去掉SCWS_XDICT_MEM,则分割同样的字符串时间增加, 请教这种模式的原理, apache 以loadmodule跑php,一次页面执行完毕后,应该都已经释放资源了,很困惑。...
什么意思 SCWS_XDICT_MEM 应该会比普通的慢吧,要加载到内存。 这个方式适合于常驻程序多次分词,WEB上不推荐。
如果你能长时间用 $scws 对象那就可以一次加载,多次使用。如果每次在不同的脚本中 set_dict 那肯定是每次都加载啊。
从结果看应该是 scws_set_dict(s, "/usr/local/etc/dict_chs_gbk.xdb", SCWS_XDICT_MEM); 这句话出了问题, 也就是可能词典不正确. 但这个词典目前测试在64位系统下也是可以正常工作的, 检查一下词典的字节数是不是没有下载完整.
...", SCWS_XDICT_XDB);可以run起来,但这种scws_set_dict(s, "dict.xdb", SCWS_XDICT_MEM);就不知在那里死了,run后没反应了? XDB模式是把词库.xdb缓存在mem中的吗? MEM格式是怎么样的策略? 另外,是否有向词库追加新词的功能API? ths.
... 从结果看应该是 scws_set_dict(s, "/usr/local/etc/dict_chs_gbk.xdb", SCWS_XDICT_MEM); 这句话出了问题, 也就是可能词典不正确. 但这个词典目前测试在64位系统下也是可以正常工作的, 检查一下词典的字节数是不是没有下载完整. [/quote] 谢谢...
[quote]SCWS_XDICT_XDB (这表示直接读取 xdb 文件)、SCWS_XDICT_MEM (这表示将 xdb 文件全部加载到内存中,以 XTree 结构存放)。具体用哪种方式需要根据自己的实际应用来决定。[b]当使用本库做为 daemon server 时应当使用 mem 方式,当只...
..._multi(s, 1); scws_set_dict(s, "/usr/local/etc/dict_chs_gbk.xdb", SCWS_XDICT_MEM); scws_set_rule(s, "/usr/local/etc/rules.ini"); scws_send_text(s, text, strlen(text)); while (res = cur = scws_get_result(s)) { while (cur) ...
..._t __declspec(dllexport)scws_fork(scws_t s); /* mode = SCWS_XDICT_XDB | SCWS_XDICT_MEM | SCWS_XDICT_TXT */ int __declspec(dllexport) scws_add_dict(scws_t s, const char *fpath, int mode); int __declspec(dllexport) scws_set_dict(scws_t s, const char *fpath, int mode); void __declspec(dllexport) ...