12 2012 档案

摘要:将字符串Hash成整型存储经常用到BKDRHash算法uint64_t BKDRHash(const char *pszKey){ uint64_t seed = 131; register uint64_t uCode=0; while(pszKey[0]) { uCode = uCode *seed + (unsigned char)pszKey[0]; pszKey++; } return uCode;}选择了64位的key,减少冲突的概率。 阅读全文
posted @ 2012-12-21 09:14 gmark 阅读(730) 评论(0) 推荐(0)
摘要:设置开机启动程序(用smbd举例)注:不同Linux发行版目录可能不同,本文以sles10举例1.su切换root身份,查看启动参数:vim /etc/inittab可以看到第一行为id:3:initdefault:(表示使用level 3 级别启动)所以我们执行的第一个开机脚本是: /etc/init.d/rc 3该脚本表示可以取到/etc/rc.d/rc3.d 这个目录来执行目录下的程序2.cd /etc/init.d/rc 3 切换到该目录一般为K*开头和S*开头的软链接如K16ssh2、S06ssh2、等等K/S表示服务以stop/start方式起停,中间的数字表示起停顺序3.可以在/ 阅读全文
posted @ 2012-12-20 15:30 gmark 阅读(322) 评论(0) 推荐(0)
摘要:在C++中用到map时,如果KEY是自定义的struct,那么需要自己定义比较函数。因为只有基本类型有默认的比较方法。定义的方法有两种,一是在作为key的struct中,重载操作符less(<),二是自定义仿函数作为map的比较函数,个人比较喜欢第二种方法。//自定义map的keytypedef struct UrlKey{ uint64_t dwBussID; uint64_t dwVersion; uint64_t dwHashUrl;}UrlKey;//自定义map的valuetypedef struct UrlValue{ string strUrl;}UrlValue;//ma 阅读全文
posted @ 2012-12-18 11:08 gmark 阅读(19119) 评论(1) 推荐(1)