I can make sure that the goroutine is exited, because the goroutine count is stable but the heap count is always increase. You can see more detail pprof from https://comet.shiyanlou.com/debug/pprof/.
在 2016年9月6日星期二 UTC+8下午5:05:05,Dave Cheney写道: > > Are you sure that goroutines are exiting? You can check this in the > /debug/pprof handler. It will tell you how many goroutines are currently > running. > > On Tuesday, 6 September 2016 18:49:29 UTC+10, aide...@gmail.com wrote: >> >> I think >> https://gist.github.com/aiden0z/b8cf00953e81f778bd584fa2ff7eaae7#file-server-go-L268 >> error >> is not the core problem. The error is ignored because the go-socket.io >> no error returned, see >> https://github.com/googollee/go-socket.io/blob/master/server.go#L91. >> >> go 1.6 and 1.7 I have tried, the problem still stands. >> >> >> 在 2016年9月6日星期二 UTC+8下午4:25:40,Dave Cheney写道: >>> >>> This error handling looks wrong, >>> >>> >>> https://gist.github.com/aiden0z/b8cf00953e81f778bd584fa2ff7eaae7#file-server-go-L268 >>> >>> Any error from socketio is ignored, and the method always succeeds >>> unconditionally. >>> >>> Also, which version of Go are you using ? >>> >>> On Tuesday, 6 September 2016 18:07:42 UTC+10, aide...@gmail.com wrote: >>>> >>>> I have restart the the websocket service, and collect new callgraph. >>>> >>>> 1. in-use heap callgraph >>>> >>>> >>>> <https://lh3.googleusercontent.com/-mOinFHs1gmM/V854u84GSMI/AAAAAAAAAFI/Dz7zJN6hobsrhRDBTfE__iR-AXp-rpxkACLcB/s1600/comet_inuse_heap.png> >>>> >>>> 2. heap alloc callgraph >>>> >>>> >>>> <https://lh3.googleusercontent.com/-zriittHlglE/V8542kygEqI/AAAAAAAAAFM/BojzIQ73zy0XbkrNeU4LX7dUAjC6T0ipQCLcB/s1600/comet_alloc_heap.png> >>>> >>>> >>>> >>>> 3. source code, pls see gist >>>> https://gist.github.com/aiden0z/b8cf00953e81f778bd584fa2ff7eaae7 >>>> >>>> >>>> >>>> 在 2016年9月6日星期二 UTC+8下午3:42:06,Dave Cheney写道: >>>>> >>>>> Are you sure that goroutines are exiting? You can check this in the >>>>> /debug/pprof handler. It will tell you how many goroutines are currently >>>>> running. >>>> >>>> -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.