david on Nostr: 晚上花了几个小时调查这个问题,最后绕了过去: ...
晚上花了几个小时调查这个问题,最后绕了过去: 从shell中定时执行,这样泄漏问题不解决也问题不大. 弄好之后下去走两步,结果一下楼就想到了,可能不是底层库有bug,而是我用错了!
go-nostr库的 SimpleRelayPool使用完之后不能傻傻地等着GC回收资源,而是要自己主动close掉relay!
回来后一测试,果然如此!持续运行,goroutine不会持续增长了!
内存虽然略有增长,但感觉应该还算正常,不像是之前那样增长很快,而且只增不减了.
go-nostr库的 SimpleRelayPool使用完之后不能傻傻地等着GC回收资源,而是要自己主动close掉relay!
回来后一测试,果然如此!持续运行,goroutine不会持续增长了!
内存虽然略有增长,但感觉应该还算正常,不像是之前那样增长很快,而且只增不减了.
quoting note14cc…9lxypidstat --human -r -p20 128
间隔20秒种,输出指定进程ID的CPU 内存使用情况,重复执行128次
非常简易的检测进程内容使用情况的命令
发现了一个Go小工具的内存泄漏.