-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathstress_test.cpp
More file actions
33 lines (24 loc) · 1.27 KB
/
stress_test.cpp
File metadata and controls
33 lines (24 loc) · 1.27 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include "AdvancedThreadPoolBenchmark.h"
int main() {
std::cout << "=== C++线程池压力测试与性能对比 ===" << std::endl;
std::cout << "\n1. 短任务压力测试..." << std::endl;
stress_test_short_tasks();
std::cout << "\n2. 混合负载测试..." << std::endl;
stress_test_mixed_workload();
std::cout << "\n3. 数据竞争测试..." << std::endl;
stress_test_data_race();
std::cout << "\n4. 性能对比测试..." << std::endl;
std::cout << "--- 线程池模式 ---" << std::endl;
benchmark_thread_pool();
std::cout << "\n--- 原始线程模式 ---" << std::endl;
benchmark_raw_threads();
std::cout << "\n5. 高级性能指标测试..." << std::endl;
auto result = AdvancedThreadPoolBenchmark::advanced_benchmark();
std::cout << "高级性能指标:" << std::endl;
std::cout << " 吞吐量: " << result.tasks_per_second << " 任务/秒" << std::endl;
std::cout << " 平均延迟: " << result.avg_latency_us << " 微秒" << std::endl;
std::cout << " P95延迟: " << result.p95_latency_us << " 微秒" << std::endl;
std::cout << " P99延迟: " << result.p99_latency_us << " 微秒" << std::endl;
std::cout << "\n=== 测试完成 ===" << std::endl;
return 0;
}