算法
guoguangwu
这个作者很懒,什么都没留下…
展开
-
go线程安全哈希表concurrent-map
map的key只能是string原创 2022-09-18 11:37:05 · 1424 阅读 · 0 评论 -
golang sync.map key不可以是指针
golang sync.map key不可以是指针原创 2022-09-16 09:30:00 · 414 阅读 · 2 评论 -
golang 线程安全哈希表github.com/tidwall/shardmap
github.com/tidwall/shardmap原创 2022-08-27 17:19:56 · 197 阅读 · 0 评论 -
golang 调用 re2
golang 调用 re2原创 2022-07-02 18:31:40 · 407 阅读 · 0 评论 -
Makefile.am:16: error: ‘nodist_pkgconfig_DATA‘ is used but ‘pkgconfigdir‘ is undefined
编译cre2报错原创 2022-07-02 15:56:32 · 691 阅读 · 0 评论 -
re2 多模式使用例子
re2 多模式使用例子原创 2022-06-22 21:48:13 · 363 阅读 · 0 评论 -
flier/gohs go hyperscan 编译报错
hyperscan原创 2022-06-15 22:38:09 · 853 阅读 · 0 评论 -
golang 自己实现线程安全的哈希表,性能优于sync map
package mainimport ( "fmt" "github.com/cespare/xxhash/v2" "math/rand" "strconv" "sync" "time")type Value struct { Mu sync.Mutex Str []string Count int}var ( goCnt uint64 = 10 loopCnt uint64 = 1000000 length = goCnt * loo.原创 2022-05-20 21:59:03 · 323 阅读 · 0 评论 -
sync map与free cache性能对比
测试10个goroutine,每个goroutine循环1000000次执行存入和查询操作,key、value都一样都是string类型。sync.map代码如下:package mainimport ( "fmt" "log" "math/rand" "strconv" "sync" "time")func main() { SynTest()}func SynTest() { var m sync.Map m.Store("count", 0) var w原创 2022-05-10 21:16:42 · 529 阅读 · 0 评论 -
用户空间的高性能rcu实现 (LTTNG)
liburcu是一个LGPLv2.1用户空间RCU(读取 - 复制 - 更新)库。 此数据同步库提供读取端访问,该访问可随CPU核数量线性扩展。liburcu-cds提供基于RCU和无锁算法的高效数据结构。 这些结构包括哈希表,队列,堆栈和双向链表。文档:RCU的用户级实现什么是RCU,从根本上说?并行编程很难,如果是这样,你能做些什么呢?二进制安装包:...原创 2019-08-07 10:11:02 · 815 阅读 · 0 评论 -
Horspool(字符串匹配)算法实现 c语言
#include<stdio.h>#define ASIZE 256void preBmBc(char *x, int m, int bmBc[]) { int i; for (i = 0; i < ASIZE; ++i) bmBc[i] = m; for (i = 0; i < m - 1; ++i) bmBc[x[...原创 2019-03-08 17:01:57 · 2028 阅读 · 2 评论