go signal简单示例

版权声明:本文为博主原创文章,转载时请务必注明本文地址, 禁止用于任何商业用途, 否则会用法律维权。 https://blog.csdn.net/stpeace/article/details/83924631
package main

import (
	"fmt"
	"os"
	"os/signal"
	"syscall"
)

func main() {
	fmt.Println("main is running")
	sc := make(chan os.Signal, 1)
	signal.Notify(sc,
		syscall.SIGINT,
		syscall.SIGTERM,
		syscall.SIGQUIT)

	sig := <-sc
	fmt.Printf("Server Got signal [%d] to exit\n", sig)
}

         阻塞等待后执行ctrl+c, 如下:

main is running
^CServer Got signal [2] to exit

        不多说。

猜你喜欢

转载自blog.csdn.net/stpeace/article/details/83924631