@@ -22,8 +22,6 @@ type Servers struct {
22
22
Servers []Server
23
23
}
24
24
25
- // gracefulOpts represents configuration parameters for the Server.
26
- // In default, gracefulOpts.Signals is []os.Signal{syscall.SIGINT, syscall.SIGTERM} and gracefulOpts.ShutdownTimeout is 0.
27
25
type gracefulOpts struct {
28
26
Signals []os.Signal
29
27
ShutdownTimeout time.Duration
@@ -39,18 +37,18 @@ func defaultGracefulOpts() gracefulOpts {
39
37
// Option applies an option to the Server.
40
38
type Option func (* gracefulOpts )
41
39
42
- // GracefulSignals sets signals to be received.
40
+ // GracefulSignals sets signals to be received. Default is syscall.SIGINT & syscall.SIGTERM.
43
41
func GracefulSignals (signals ... os.Signal ) Option {
44
42
return func (o * gracefulOpts ) { o .Signals = signals }
45
43
}
46
44
47
- // GracefulShutdownTimeout sets timeout for shutdown.
45
+ // GracefulShutdownTimeout sets timeout for shutdown. Default is 0.
48
46
func GracefulShutdownTimeout (timeout time.Duration ) Option {
49
47
return func (o * gracefulOpts ) { o .ShutdownTimeout = timeout }
50
48
}
51
49
52
- // Graceful runs all servers contained in s , then waits signals.
53
- // When receive an expected signal (in default, os.Interrupt ), s stops all servers gracefully.
50
+ // Graceful runs all servers contained in `s` , then waits signals.
51
+ // When receive an expected signal (in default, syscall.SIGINT & syscall.SIGTERM ), `s` stops all servers gracefully.
54
52
func (s Servers ) Graceful (ctx context.Context , options ... Option ) error {
55
53
opts := defaultGracefulOpts ()
56
54
for _ , f := range options {
0 commit comments