Open cpheps opened 2 years ago
@djaglowski said it can be upstreamed
Following up on this - I misunderstood the context of this issue, #4946, and 4939, and mistakenly believed they may have been resolved as part of #4878.
Can I work on this?
@deepto98 sure. Assigned to you. Thanks
Hi @deepto98, are you still working on this? I would like to take this up
Hi @cpheps I guess 1 and 2 has been addressed by other the other issues
going to take a look at this
Is your feature request related to a problem? Please describe. Discussion from 4878 led to a decision to design
Shutdown
to follow language patterns for how it andRun
should operate. Followinghttp.Server
as an example the following behaviors should be met:Shutdown
be safe to be called at any point. Even if there is no action to takeShutdown
is called beforeRun
it will exit cleanly and the next call toRun
will exit due to the previousShutdown
Shutdown
is called whileRun
is active it should block untilRun
has confirmed shutdown.Point 3 isn't currently implemented but desired behavior.
Describe the solution you'd like
Shutdown
will block untilRun
has confirmed cleanup. WhateverShutdown
checks for should not stop it from cleanly exiting ifRun
hasn't been called yet or afterRun
was called.Describe alternatives you've considered Alternative is don't block
Shutdown
and just exit like it does now after closing the channel.Additional context Action item from #4878
If we want to go this route I think there needs to be some discussion on what
Shutdown
should block on. It seems like it should be when the state isClosing
but that won't allowShutdown
to cleanly exit if called before or afterRun
.