aboutsummaryrefslogtreecommitdiffhomepage
path: root/test
diff options
context:
space:
mode:
authorGravatar Yang Gao <yangg@google.com>2017-10-05 13:37:52 -0700
committerGravatar GitHub <noreply@github.com>2017-10-05 13:37:52 -0700
commit3734801aad232766273bff9e7064007fa8c2ac7f (patch)
tree1f5c3b5310ecfef77392d7a47a8af88806ef20f1 /test
parent52ac18b54e8edcdde97af83469bc6404157415fb (diff)
parent53a64b993623873e4abf7c745d8514780e755328 (diff)
Merge pull request #12828 from yang-g/delete_stress_clients
Properly clean up stress test clients
Diffstat (limited to 'test')
-rw-r--r--test/cpp/interop/stress_test.cc7
1 files changed, 4 insertions, 3 deletions
diff --git a/test/cpp/interop/stress_test.cc b/test/cpp/interop/stress_test.cc
index 9cc5a8168b..c6d3600be8 100644
--- a/test/cpp/interop/stress_test.cc
+++ b/test/cpp/interop/stress_test.cc
@@ -257,6 +257,7 @@ int main(int argc, char** argv) {
gpr_log(GPR_INFO, "Starting test(s)..");
std::vector<std::thread> test_threads;
+ std::vector<std::unique_ptr<StressTestInteropClient>> clients;
// Create and start the test threads.
// Note that:
@@ -282,9 +283,9 @@ int main(int argc, char** argv) {
// Create stub(s) for each channel
for (int stub_idx = 0; stub_idx < FLAGS_num_stubs_per_channel;
stub_idx++) {
- StressTestInteropClient* client = new StressTestInteropClient(
+ clients.emplace_back(new StressTestInteropClient(
++thread_idx, *it, channel, test_selector, FLAGS_test_duration_secs,
- FLAGS_sleep_duration_ms, FLAGS_do_not_abort_on_transient_failures);
+ FLAGS_sleep_duration_ms, FLAGS_do_not_abort_on_transient_failures));
bool is_already_created = false;
// QpsGauge name
@@ -293,7 +294,7 @@ int main(int argc, char** argv) {
server_idx, channel_idx, stub_idx);
test_threads.emplace_back(std::thread(
- &StressTestInteropClient::MainLoop, client,
+ &StressTestInteropClient::MainLoop, clients.back().get(),
metrics_service.CreateQpsGauge(buffer, &is_already_created)));
// The QpsGauge should not have been already created