我有一個程序可以運行在兩臺不同的計算機上,如:服務器和客戶端。我想用C++和Java在我的程序中測量網絡中的延遲。測量運行時間的正常命令(例如C中的gettimeofday
)我認爲對於網絡上的運行延遲並不是很準確。一些忠告?通過網絡測量延遲
Q
通過網絡測量延遲
1
A
回答
2
您可以測量精確的時間與std::chrono
#include <chrono>
auto timeStart = std::chrono::high_resolution_clock::now();
// do something... wait for result...
auto timeEnd = std::chrono::high_resolution_clock::now();
long long duration = std::chrono::duration_cast<std::chrono::microseconds>(timeEnd - timeStart).count();
更換microseconds
與nanoseconds
,milliseconds
,seconds
得到持續時間在不同的單位。
你不妨使用std::clock儘管它可能會提供不準確的測量:
#include <ctime>
std::clock_t timeStart = std::clock();
// do something... wait for result...
std::clock_t timeEnd = std::clock();
double durationMs = 1000.0 * (timeEnd-timeStart)/CLOCKS_PER_SEC;
相關問題
- 1. 有一種方法可以測量java中的延遲網絡
- 2. Chrome網絡選項卡中的延遲測量
- 3. 如何通過DNS協議檢測兩臺主機之間的網絡延遲?
- 4. 通過Linux上的UDP進行延遲測量
- 5. 網絡丟包延遲帶寬模擬
- 6. 遊戲網絡延遲補償
- 7. 網絡延遲和計算機凍結
- 8. 高網絡延遲的原因
- 9. 具有極高延遲的網絡
- 10. Hibernate/c3p0/MySQL下的網絡延遲
- 11. 異步模擬網絡延遲
- 12. 移動網絡上的延遲(Android)
- 13. 使用.NET Framework模擬網絡延遲
- 14. 網絡啓動命令延遲?
- 15. 網絡延遲問題 - 服務器壓力測試
- 16. 測量互斥量或futex延遲
- 17. 如何測量低延遲C++應用程序的延遲
- 18. 如何測量低延遲環境中的延遲?
- 19. Android GPRS網絡通信延遲接收呼叫時
- 20. 計算網絡延遲多連通適配器
- 21. 減少高容量Intranet應用程序通信中的網絡延遲
- 22. 通過高延遲網絡連接同步許多(小)文件的方法
- 23. 如何使用jQuery延遲迭代通過div延遲?
- 24. 通過網絡
- 25. 通過網絡
- 26. 通過網絡
- 27. EC2 - 微實例 - 非常緩慢的網絡響應/延遲/延遲
- 28. 如何測量Python導入延遲
- 29. Flink流 - 延遲和吞吐量檢測
- 30. 測量TCP連接延遲的工具
'正常的命令來衡量runtime' - 什麼是你指什麼?普通ping有什麼問題? – Pavel
@Pavel編輯我的問題。我指的是諸如gettimeofday – PRVS
之類的命令您是否想知道端到端延遲(即單向)還是往返延遲(例如ping)? – Jonas