最新的版本容易出现goroutine 泄漏从而导致程序崩溃
goroutine 4465 [sleep]:
time.Sleep(0x14101bc0)
/usr/lib/go/src/runtime/time.go:315 +0xf7
github.com/sigcn/pg/disco/udp.(*UDPConn).RunDiscoMessageSendLoop.func1(0xc000094488, 0xc002953350?, 0xc0016428f8)
/home/rkonfj/Documents/pg/disco/udp/udp.go:232 +0x18b
created by github.com/sigcn/pg/disco/udp.(*UDPConn).RunDiscoMessageSendLoop in goroutine 4327
/home/rkonfj/Documents/pg/disco/udp/udp.go:291 +0x7fb
goroutine 4586 [sleep]:
time.Sleep(0xd87bec0)
/usr/lib/go/src/runtime/time.go:315 +0xf7
github.com/sigcn/pg/disco/udp.(*UDPConn).RunDiscoMessageSendLoop.func1(0xc0005302a8, 0x0?, 0xc0016428f8)
/home/rkonfj/Documents/pg/disco/udp/udp.go:232 +0x18b
created by github.com/sigcn/pg/disco/udp.(*UDPConn).RunDiscoMessageSendLoop in goroutine 4327
/home/rkonfj/Documents/pg/disco/udp/udp.go:291 +0x7fb
goroutine 4785 [sleep]:
time.Sleep(0xc751640)
/usr/lib/go/src/runtime/time.go:315 +0xf7
github.com/sigcn/pg/disco/udp.(*UDPConn).RunDiscoMessageSendLoop.func1(0xc0005300e0, 0x0?, 0xc001642990)
/home/rkonfj/Documents/pg/disco/udp/udp.go:232 +0x18b
created by github.com/sigcn/pg/disco/udp.(*UDPConn).RunDiscoMessageSendLoop in goroutine 4325
/home/rkonfj/Documents/pg/disco/udp/udp.go:291 +0x7fb
goroutine 5429 [sleep]:
time.Sleep(0xca2dd00)
/usr/lib/go/src/runtime/time.go:315 +0xf7
github.com/sigcn/pg/disco/udp.(*UDPConn).RunDiscoMessageSendLoop.func1(0xc0005300c0, 0x0?, 0xc002ec6d84)
/home/rkonfj/Documents/pg/disco/udp/udp.go:232 +0x18b
created by github.com/sigcn/pg/disco/udp.(*UDPConn).RunDiscoMessageSendLoop in goroutine 4077
/home/rkonfj/Documents/pg/disco/udp/udp.go:291 +0x7fb
goroutine 5183 [sleep]:
time.Sleep(0xec82e00)
/usr/lib/go/src/runtime/time.go:315 +0xf7
github.com/sigcn/pg/disco/udp.(*UDPConn).RunDiscoMessageSendLoop.func1(0xc000094338, 0x0?, 0xc002ec6d84)
/home/rkonfj/Documents/pg/disco/udp/udp.go:232 +0x18b
created by github.com/sigcn/pg/disco/udp.(*UDPConn).RunDiscoMessageSendLoop in goroutine 4077
/home/rkonfj/Documents/pg/disco/udp/udp.go:291 +0x7fb
有更多的日志信息吗?
贴出的这部分可能并不是问题的根源,可能是其他 goroutine 导致的 panic
有更多的日志信息吗?
贴出的这部分可能并不是问题的根源,可能是其他 goroutine 导致的 panic
我试试,这个错误很长超过了控制台的日志长度,我是在windows上测试的,不太好抓错误日志
v0.8.1 和 v0.8.2 存在资源泄露问题(可能跟这个有关系)
47451a2f8ac02d29d69b57788f77096c7f5e49cd 这个提交修复了它
v0.8.1 和 v0.8.2 存在资源泄露问题(可能跟这个有关系)
47451a2 这个提交修复了它
问题还是存在,间歇性的,看上去似乎与UDP打洞和端口探测有关系。一旦打洞成功这个问题很长时间都不会复现。对了,我是多Wan环境。
v0.8.1 和 v0.8.2 存在资源泄露问题(可能跟这个有关系) 47451a2 这个提交修复了它
问题还是存在,间歇性的,看上去似乎与UDP打洞和端口探测有关系。一旦打洞成功这个问题很长时间都不会复现。对了,我是多Wan环境。
能否使用这个包来处理协程中可能出现的panic的地方 github.com/sourcegraph/conc
可以把标准输出和标准错误重定向到文件,然后把文件传上来。
f348b2a4837ad7ee77f078dda13fe89900dc673c
这个提交修复了一个并发问题,也许会解决这个?