32GB內存被BitComet吃光,其中UDP傳輸緩衝區佔用超高

請教各位目前已經更新BitComet到1.90 6/7版,
看任務欄僅剩4個未下載完成任務,
但發現Win10的內存已經幾乎被BitComet佔用光了,
如圖:


其中看全局統計的內存使用,UDP傳輸緩衝區佔用28GB,

請教各位該如何設定,才不會讓BitComet佔用到這麼多內存?
不然已經有好幾次因為內存不足,而無法登入電腦,
或登入即黑屏只能強制關機重新開機,謝謝。

这不是BUG,这是设置了network.max_udp_pkt_per_sec数值过小引起的UDP请求发不出去导致的缓冲区积累,尝试设置该数值为较大的数值,例如设置10000。
或者直接禁用DHT、UTP、UDP tracker等需要使用到UDP协议的功能。
在统计分类的最下方,有个UDP传输,可以展开,里面可以详细看到是哪个累积引起的缓冲区过高。

不过我也觉得,这个地方应当改进一下,比如说缓冲区做个超时,如果一个请求在缓冲区超过60秒,则直接丢弃此请求,而不是继续在缓冲区里保持着不释放

而且个人也不建议打开内存压缩,可以看到你截图32G+24G虚拟内存都用完了。(右侧的虚拟记忆体提交大小就是)
打开内存压缩时会反复把内存资源迁移到虚拟内存,所以导致了系统奔溃出现黑屏必须强制重启。
system.compact_memory_interval 此数值应当保持为0,可以解决引起系统崩溃问题(这样出问题只会是比特彗星自身出现崩溃)。

3個讚

感謝 @zhuxiaoying85309 專家回覆解答,
我已經按照您的指示先將network.max_udp_pkt_per_sec設成10000(原本預設只有10),
system.compact_memory_interval之前已經有爬文,所以已經設成0了,
後續再觀察看看內存問題是否有改善,謝謝。

1個讚