比特彗星1.56存在一处内存泄漏,占用内存超过40G!


3

1個讚

你的"他人共享資源"是不是選擇開"無限大"?

:slightly_smiling_face:
share

我曾經為了找資源,開過幾次無限大,接著被佔用的記憶體會像滾雪求一樣,越來越大,直到電腦系統發出警告黃牌,這期間大約2~3個小時。(感覺就像早期的安卓系統一樣,會越來越佔資源。):slightly_smiling_face:

1個讚

内存好满呀16的6个位置全满,可惜是ddr3的。是炫耀内存足吗?

能有用戶以優異的硬體設備幫忙測試軟體性能並找出可修正改進之處,是件好事。
我想沒有什麼特別想要炫耀之處。
凡事要往高遠看,大家才會進步。

1個讚

所言甚是。:slightly_smiling_face:

1個讚

谢谢反馈,截图中实际占用的物理内存要看“工作集”,大约是3.09GB。其它几个内存统计指标可参见https://www.cnblogs.com/georgepei/archive/2012/03/07/2383445.html

不知道是什么情况引起的,,,内存确实炸了,最近没复现了,猜测可能是某个种子引发的

1個讚

“已提交”大小达到33GB,确实不正常。可惜没办法像你一样测试这么大流量的情况,估计很难排查了 :sweat_smile:

挂了几天机,内存提交大小的问题还是没查出来。如果能重现的话,麻烦用vmmap抓取一个内存使用快照发给我看看。下载地址:https://docs.microsoft.com/en-us/sysinternals/downloads/vmmap

启动vmmap后,选择BitComet,然后文件菜单另存为 BitComet.mmp。把这个文件给我看看吧,谢谢

链接: 百度网盘 请输入提取码 提取码: h5v7

这个是版本号1.57,打开窗口后关闭窗口,先把物理内存同时降下来后抓的快照,提交大小没降低。
是不是我还要弄一份没有进行那个窗口化最小化整理内存什么的?

谢谢,已下载,不用再弄最小化前的了。看了一下,提交大小20GB,其中堆空间有大约18GB,剩下的大部分应该都是磁盘缓存,估计有1.5GB左右。方便的话,把彗星的统计窗口截图放上来看看吧

堆空间这个内存溢出好解决嘛,,还有1.57反映 BUG那个贴还有好多没修,有时间的话都搞搞吧

堆空间内存泄漏远程诊断比较困难,我得上网找找资料。放心,其它的BUG后续也会处理的。

beta3测试版上传了。麻烦帮着测试一下,步骤私信给你了,谢谢啊

发你了
Up Time: 1 天 13:02:32
Memory Usage:
Working Set: 1.72 GB
Commit Size: 19.1 GB
Disk Cache Size:
Total Size: 1.15 GB
BitTorrent: 1.14 GB
HTTP/FTP: 0 B
Long-Term Seed: 11.1 MB

=== pool_block ===
blocked_regions_size = 87.3 MB
blocked_regions_num = 1398
commited_size = 64.3 MB
free_block_size = 22.9 MB
free_block_num = 5885
unblocked_regions_size = 1.18 GB
unblocked_regions_num = 944
TOTAL_SIZE = 1.26 GB

=== committed_blocks ===
DHE_send: 0 B, 0 blocks
vector_buffer: 72.3 MB, 9427 blocks
class Core_BitTorrent::BitTorrentPeer: 1.33 MB, 38 blocks
class Core_BitTorrent::BitTorrentPeerPool: 160.0 KB, 4 blocks
class Core_BitTorrent::BitTorrentProtocolDHEncryption: 72.0 KB, 18 blocks
class Core_BitTorrent::BitTorrentProtocolHandshake: 108.0 KB, 27 blocks
class Core_BitTorrent::CFileEntry: 352.0 KB, 11 blocks
class Core_BitTorrent::PieceManage: 8 KB, 2 blocks
class Core_BitTorrent::PieceSliceManage: 4 KB, 1 blocks
class Core_BitTorrent::peer_banned_t: 500.0 KB, 116 blocks
class Core_BitTorrent::peer_basic_t: 3.95 MB, 119 blocks
class Core_BitTorrent::peer_description_t: 392.0 KB, 98 blocks
class Core_BitTorrent::peer_inactive_t: 19.3 MB, 238 blocks
class Core_Common::xml_node_t: 0 B, 0 blocks
class Core_HTTPServer::HTTPServerImpl: 40.0 KB, 1 blocks
class Core_Socket::SocketPeer: 320.0 KB, 40 blocks
class Core_TaskManage::TaskBasic: 32.0 KB, 4 blocks
class Core_TaskManage::TaskBitTorrent: 12.0 KB, 3 blocks
class Core_TrackerClient::TrackerClient: 3.22 MB, 413 blocks
class Core_TrackerClient::TrackerClientHTTP: 464.0 KB, 116 blocks
class Core_TrackerClient::TrackerClientUDP: 700.0 KB, 175 blocks
class Core_Wire::WireLinkLayer: 11.2 MB, 361 blocks
class Core_Wire::wire_group_t: 128.0 KB, 8 blocks
file_t::read(): 0 B, 0 blocks
ltseed_cache: 11.1 MB, 178 blocks
piece_cache: 1.14 GB, 671 blocks
struct Core_BitTorrent_Share::InterfaceBitTorrentShare::torrent_collect_t: 472.0 KB, 118 blocks
struct Core_BitTorrent_Share::InterfaceBitTorrentShare::torrent_share_t: 20.0 KB, 5 blocks
struct Core_Common::TimerQueue::timer_t: 1.72 MB, 442 blocks
TOTAL = 1.27 GB, 12634 blocks

=== pool_stats (current) ===
struct Core_BitTorrent::BitTorrentTaskWrapper::log_item_t: 1384195 (135.6 MB)
struct Core_BitTorrent::BitTorrentTaskWrapper::peer_log_t: 9755019 (1.35 GB)
struct Core_BitTorrent::BitTorrentTaskWrapper::tracker_log_t: 21991 (546.7 MB)
struct Core_BitTorrent_Share::InterfaceBitTorrentShare::torrent_collect_t: 976 (110.0 KB)
struct Core_BitTorrent_Share::InterfaceBitTorrentShare::torrent_collect_t * __ptr64: 2 (16.6 KB)
struct Core_BitTorrent_Share::InterfaceBitTorrentShare::torrent_share_t: 296 (39.0 KB)
struct Core_BitTorrent_Share::InterfaceBitTorrentShare::torrent_share_t * __ptr64: 2 (3.29 KB)
struct Core_Common::xml_node_t::attribute_t: 391 (70.4 KB)
struct Core_Tracker_DHT::kbucket_t: 2 (21.8 KB)
struct Core_Tracker_DHT::knode_t: 440 (319.0 KB)
total = 2.02 GB

=== pool_stats (alloc) ===
struct Core_BitTorrent::BitTorrentTaskWrapper::log_item_t: 2771046 (343.6 MB)
struct Core_BitTorrent::BitTorrentTaskWrapper::peer_log_t: 20813038 (2.90 GB)
struct Core_BitTorrent::BitTorrentTaskWrapper::tracker_log_t: 345954 (1.60 GB)
struct Core_BitTorrent_Share::InterfaceBitTorrentShare::torrent_collect_t: 1222545 (118.4 MB)
struct Core_BitTorrent_Share::InterfaceBitTorrentShare::torrent_collect_t * __ptr64: 36 (50.0 KB)
struct Core_BitTorrent_Share::InterfaceBitTorrentShare::torrent_share_t: 592 (78.1 KB)
struct Core_BitTorrent_Share::InterfaceBitTorrentShare::torrent_share_t * __ptr64: 28 (9.93 KB)
struct Core_Common::xml_node_t::attribute_t: 41013590 (5.66 GB)
struct Core_Tracker_DHT::kbucket_t: 2 (21.8 KB)
struct Core_Tracker_DHT::knode_t: 2882 (921.6 KB)
total = 10.6 GB

1

谢谢反馈。从数据分析来看,泄露的内存不在统计的范围内。还真是奇怪呢 :joy:

跑了很久还是没遇到你服务器上的问题。你在服务器上运行彗星时,有没有同时在跑杀毒/网络监控软件呢?麻烦用ProcessHacker/ProcessExplorer看看BitComet进程的模块列表,会不会有第三方软件注入dll,导致额外的内存占用呢?

image


没有看到被第三方注入,具体是哪里看我抓个图给你?
qb是没有问题的,没杀软,(前两天装了个火绒不过不是这个问题)因为一直都有这个泄漏问题,必现。

所以我猜测是部分种子文件引起的吧。。。大概