gpt4 book ai didi

delphi - 如何获取当前带宽(下载)速度?

转载 作者:行者123 更新时间:2023-12-03 14:52:15 25 4
gpt4 key购买 nike

如何使用 TIdTCPServer 或 TIdTCPClient 获取当前带宽速度?

我想知道,客户端从服务器下载数据的速度有多快?

例如:下载速度:450 kbps

最佳答案

将处理程序分配给连接的 TIdTCPConnection 对象的 OnWorkBeginOnWorkOnWorkEnd 事件。 OnWorkBegin 事件有一个 AWorkCountMax 参数,该参数为您提供预计传输的总字节数(如果提前知道)。 OnWork 事件有一个 AWorkCount 参数,可提供自触发 OnWorkBegin 事件以来实际传输的字节总数。

每当触发 OnWork 事件时,请从当前 AWorkCount 值中减去先前的 AWorkCount 值,以确定之间传输了多少字节两个事件,然后将该值除以两个事件之间耗时量。利用该最终值,您可以根据需要计算 b/sec、kb/sec、mb/sec 等。

根据您发送/接收数据的具体方式,您可能需要手动调用 TIdTCPConnection< 的 BeginWork()EndWork() 方法 获取要开始触发的 OnWork... 事件。大多数 Indy 的读/写方法不会在内部调用 Begin/EndWork()

关于delphi - 如何获取当前带宽(下载)速度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8650632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com