tao icon indicating copy to clipboard operation
tao copied to clipboard

Asynchronous TCP framework written in golang

Results 20 tao issues
Sort by recently updated
recently updated
newest added

================== WARNING: DATA RACE Write at 0x00c00018e080 by main goroutine: github.com/leesper/tao.(*ClientConn).reconnect() F:/workspace/tao/conn.go:440 +0x36f github.com/leesper/tao.(*ClientConn).Close.func1() F:/workspace/tao/conn.go:418 +0x3f0 sync.(*Once).doSlow() C:/Program Files/Go/src/sync/once.go:68 +0x127 sync.(*Once).Do() C:/Program Files/Go/src/sync/once.go:59 +0x46 github.com/leesper/tao.(*ClientConn).Close() F:/workspace/tao/conn.go:381 +0x64 main.main·dwrap·2() F:/workspace/tao/examples/chat/client/client.go:50 +0x39...

简书上的设计文档打不开了,提示文章正在审核中

在Client发包里,可否加一个连接正常状态的检查?看了一遍源码,比如一种case在连接刚被各种异常网络情况断开后,发送了message,此时message将会发送失败,wirteLoop会退出。可否在asyncWrite中加上连接是否正常的状态检查,连接不正常,则重新进行Dial连接,但是这样会阻塞asyncWrite的调用。

看tao许久不更新了,想用又不敢用

https://github.com/leesper/tao/blob/50d6193148cc0240a5908bc787481398664584a0/conn.go#L686 要对比实际写的长度跟预期是否一致

我在runAt或者runEvery 往tcp write数据的话,会一直收不到数据,直到超时才会在handler里收到数据。。

可以弄个限速的版本吗

散列逻辑只会将任务平均分配到固定的几个worker中去执行,很多worker都是闲置的 写了一个demo,大概意思是将10000个任务分配到50个worker当中 m := make(map[uint32]uint32, 0) for i := 0; i < 10000; i++ { var a = uint64(i) aa := &a b := (*[4]byte)(unsafe.Pointer(aa)) // fmt.Println(*b) h := fnv.New32a()...