diff options
author | 2018-02-13 14:40:39 -0800 | |
---|---|---|
committer | 2018-02-15 21:30:13 -0800 | |
commit | 58a62755fc6546a117b7b8f3a0a344f85b2ea5f9 (patch) | |
tree | 294e8432672a2a8b3b2bd1bab7d24e75e1a6d4b6 /test/core/end2end/bad_server_response_test.cc | |
parent | b0d71823a0f031ad1c04be30f22653177139da0b (diff) |
Remove support for detached threads. All threads must be joined.
Diffstat (limited to 'test/core/end2end/bad_server_response_test.cc')
-rw-r--r-- | test/core/end2end/bad_server_response_test.cc | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/test/core/end2end/bad_server_response_test.cc b/test/core/end2end/bad_server_response_test.cc index 1af168e1f9..e7b2cafa35 100644 --- a/test/core/end2end/bad_server_response_test.cc +++ b/test/core/end2end/bad_server_response_test.cc @@ -253,15 +253,17 @@ static void actually_poll_server(void* arg) { gpr_free(pa); } -static void poll_server_until_read_done(test_tcp_server* server, - gpr_event* signal_when_done) { +static gpr_thd_id poll_server_until_read_done(test_tcp_server* server, + + gpr_event* signal_when_done) { gpr_atm_rel_store(&state.done_atm, 0); state.write_done = 0; gpr_thd_id id; poll_args* pa = static_cast<poll_args*>(gpr_malloc(sizeof(*pa))); pa->server = server; pa->signal_when_done = signal_when_done; - gpr_thd_new(&id, "grpc_poll_server", actually_poll_server, pa, nullptr); + gpr_thd_new(&id, "grpc_poll_server", actually_poll_server, pa); + return id; } static void run_test(const char* response_payload, @@ -281,9 +283,10 @@ static void run_test(const char* response_payload, state.response_payload_length = response_payload_length; /* poll server until sending out the response */ - poll_server_until_read_done(&test_server, &ev); + gpr_thd_id id = poll_server_until_read_done(&test_server, &ev); start_rpc(server_port, expected_status, expected_detail); gpr_event_wait(&ev, gpr_inf_future(GPR_CLOCK_REALTIME)); + gpr_thd_join(id); /* clean up */ grpc_endpoint_shutdown(state.tcp, |