go get github.com/judwhite/go-svc/svc
package main
import (
"github.com/judwhite/go-svc/svc"
"log"
"os"
"syscall"
"time"
)
type pro struct {
}
func main() {
pro :=&pro{}
svc.Run(pro,syscall.SIGINT)
}
func (p *pro)Init( e svc.Environment) error{
port := os.Getpid()
log.Printf("程序已经初始化 端口为%d \n",port)
return nil
}
func (p *pro)Start() error{
log.Printf("程序已经start\n")
go func() {
tik := time.NewTicker(3*time.Second)
for {
c := <-tik.C
log.Printf("当前时间为:%s \n",c.Format("2006-01-02 15:04:05"))
}
}()
return nil
}
func (p *pro)Stop() error{
log.Printf("程序已经stop\n")
return nil
}
输出