mirror of
https://github.com/ayflying/p2p.git
synced 2026-03-04 17:29:22 +00:00
版本更新改为协程,预防拥堵主程序
This commit is contained in:
@@ -4,6 +4,7 @@ import (
|
||||
"context"
|
||||
|
||||
"github.com/ayflying/p2p/internal/service"
|
||||
updateGithub "github.com/ayflying/update-github-release"
|
||||
"github.com/gogf/gf/v2/frame/g"
|
||||
"github.com/gogf/gf/v2/os/gcron"
|
||||
"github.com/gogf/gf/v2/os/gctx"
|
||||
@@ -20,18 +21,23 @@ func init() {
|
||||
|
||||
getDev, _ := g.Cfg().GetWithEnv(gctx.New(), "dev")
|
||||
if !getDev.Bool() {
|
||||
var update = updateGithub.New("https://api.github.com/repos/ayflying/p2p/releases/latest")
|
||||
|
||||
// 每天0点检查更新
|
||||
gcron.Add(gctx.New(), "0 0 0 * * *", func(ctx context.Context) {
|
||||
err := service.System().CheckUpdate()
|
||||
err := update.CheckUpdate()
|
||||
if err != nil {
|
||||
g.Log().Errorf(ctx, "检查更新失败:%v", err)
|
||||
}
|
||||
})
|
||||
|
||||
err := service.System().CheckUpdate()
|
||||
if err != nil {
|
||||
g.Log().Errorf(gctx.New(), "检查更新失败:%v", err)
|
||||
}
|
||||
go func() {
|
||||
//在协程中检查更新,预防主程序阻塞
|
||||
err := update.CheckUpdate()
|
||||
if err != nil {
|
||||
g.Log().Errorf(gctx.New(), "检查更新失败:%v", err)
|
||||
}
|
||||
}()
|
||||
} else {
|
||||
g.Log().Debugf(gctx.New(), "开发模式,不检查更新")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user