diff options
author | Yash Tibrewal <yashkt@google.com> | 2017-09-13 14:39:51 -0700 |
---|---|---|
committer | Yash Tibrewal <yashkt@google.com> | 2017-09-13 14:39:51 -0700 |
commit | cb3c1da2d6757289f01e2cd57434b97aae6862cf (patch) | |
tree | 0aad9f65205a573796690a71313c3d23e37d963a /src/core/lib/surface | |
parent | 2e2bf250fbf72ea22172cae7db2d3c985363958b (diff) | |
parent | fc57518ac1999743da3f618193e9d2240a5660c1 (diff) |
Merging master into ctocc4
Diffstat (limited to 'src/core/lib/surface')
-rw-r--r-- | src/core/lib/surface/init.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/core/lib/surface/init.c b/src/core/lib/surface/init.c index 280315036f..b089da2c54 100644 --- a/src/core/lib/surface/init.c +++ b/src/core/lib/surface/init.c @@ -36,6 +36,7 @@ #include "src/core/lib/iomgr/executor.h" #include "src/core/lib/iomgr/iomgr.h" #include "src/core/lib/iomgr/resource_quota.h" +#include "src/core/lib/iomgr/timer_manager.h" #include "src/core/lib/profiling/timers.h" #include "src/core/lib/slice/slice_internal.h" #include "src/core/lib/surface/alarm_internal.h" @@ -179,14 +180,16 @@ void grpc_shutdown(void) { GRPC_EXEC_CTX_INITIALIZER(0, grpc_never_ready_to_finish, NULL); gpr_mu_lock(&g_init_mu); if (--g_initializations == 0) { - grpc_iomgr_shutdown(&exec_ctx); - gpr_timers_global_destroy(); - grpc_tracer_shutdown(); + grpc_executor_shutdown(&exec_ctx); + grpc_timer_manager_set_threading(false); // shutdown timer_manager thread for (i = g_number_of_plugins; i >= 0; i--) { if (g_all_of_the_plugins[i].destroy != NULL) { g_all_of_the_plugins[i].destroy(); } } + grpc_iomgr_shutdown(&exec_ctx); + gpr_timers_global_destroy(); + grpc_tracer_shutdown(); grpc_mdctx_global_shutdown(&exec_ctx); grpc_handshaker_factory_registry_shutdown(&exec_ctx); grpc_slice_intern_shutdown(); |