diff options
Diffstat (limited to 'src/ruby/lib')
-rw-r--r-- | src/ruby/lib/grpc/generic/rpc_server.rb | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/ruby/lib/grpc/generic/rpc_server.rb b/src/ruby/lib/grpc/generic/rpc_server.rb index 7dbcb7d479..1e70aba403 100644 --- a/src/ruby/lib/grpc/generic/rpc_server.rb +++ b/src/ruby/lib/grpc/generic/rpc_server.rb @@ -54,6 +54,7 @@ module GRPC DEFAULT_MAX_WAITING_REQUESTS = 60 # Default poll period is 1s + # Used for grpc server shutdown and thread pool shutdown timeouts DEFAULT_POLL_PERIOD = 1 # Signal check period is 0.25s @@ -124,10 +125,10 @@ module GRPC return if @running_state != :running transition_running_state(:stopping) end + @pool.shutdown + @pool.wait_for_termination(@poll_period) deadline = from_relative_time(@poll_period) @server.close(deadline) - @pool.shutdown - @pool.wait_for_termination end def running_state |