chore: infrastructure alignment and doc sync (by checkall)

This commit is contained in:
AI Engineer 2026-05-14 21:56:27 +08:00
parent 5dd28855db
commit 1cd9c9bb4d
4 changed files with 29 additions and 9 deletions

4
go.mod
View File

@ -8,10 +8,10 @@ require (
) )
require ( require (
apigo.cc/go/cast v1.3.0 // indirect apigo.cc/go/cast v1.3.2 // indirect
apigo.cc/go/config v1.3.0 // indirect apigo.cc/go/config v1.3.0 // indirect
apigo.cc/go/encoding v1.3.0 // indirect apigo.cc/go/encoding v1.3.0 // indirect
apigo.cc/go/file v1.3.0 // indirect apigo.cc/go/file v1.3.1 // indirect
apigo.cc/go/id v1.3.0 // indirect apigo.cc/go/id v1.3.0 // indirect
apigo.cc/go/rand v1.3.0 // indirect apigo.cc/go/rand v1.3.0 // indirect
apigo.cc/go/safe v1.3.0 // indirect apigo.cc/go/safe v1.3.0 // indirect

8
go.sum
View File

@ -1,11 +1,11 @@
apigo.cc/go/cast v1.3.0 h1:ZTcLYijkqZjSWSCSpJUWMfzJYeJKbwKxquKkPrFsROQ= apigo.cc/go/cast v1.3.2 h1:hh9MWDSwh3T/kQdCHjFpjDwHrh2A05Q4wt1AAWs8NBI=
apigo.cc/go/cast v1.3.0/go.mod h1:lGlwImiOvHxG7buyMWhFzcdvQzmSaoKbmr7bcDfUpHk= apigo.cc/go/cast v1.3.2/go.mod h1:lGlwImiOvHxG7buyMWhFzcdvQzmSaoKbmr7bcDfUpHk=
apigo.cc/go/config v1.3.0 h1:TwI3bv3D+BJrAnFx+o62HQo3FarY2Ge3SCGsKchFYGg= apigo.cc/go/config v1.3.0 h1:TwI3bv3D+BJrAnFx+o62HQo3FarY2Ge3SCGsKchFYGg=
apigo.cc/go/config v1.3.0/go.mod h1:88lqKEBXlIExFKt1geLONVLYyM+QhRVpBe0ok3OEvjI= apigo.cc/go/config v1.3.0/go.mod h1:88lqKEBXlIExFKt1geLONVLYyM+QhRVpBe0ok3OEvjI=
apigo.cc/go/encoding v1.3.0 h1:8jqNHoZBR8vOU/BGsLFebfp1Txa1UxDRpd7YwzIFLJs= apigo.cc/go/encoding v1.3.0 h1:8jqNHoZBR8vOU/BGsLFebfp1Txa1UxDRpd7YwzIFLJs=
apigo.cc/go/encoding v1.3.0/go.mod h1:kT/uUJiuAOkZ4LzUWrUtk/I0iL1D8aatvD+59bDnHBo= apigo.cc/go/encoding v1.3.0/go.mod h1:kT/uUJiuAOkZ4LzUWrUtk/I0iL1D8aatvD+59bDnHBo=
apigo.cc/go/file v1.3.0 h1:xG9FcY3Rv6Br83r9pq9QsIXFrplx4g8ITOkHSzfzXRg= apigo.cc/go/file v1.3.1 h1:qHgiJsn1K9DazWRrPoHVnXtp6hDGGsUpAE/4G1bFXqY=
apigo.cc/go/file v1.3.0/go.mod h1:pYHBlB/XwsrnWpEh7GIFpbiqobrExfiB+rEN8V2d2kY= apigo.cc/go/file v1.3.1/go.mod h1:pYHBlB/XwsrnWpEh7GIFpbiqobrExfiB+rEN8V2d2kY=
apigo.cc/go/id v1.3.0 h1:Tr2Yj0Rl19lfwW5wBTJ407o/zgo2oVRLE20WWEgJzdE= apigo.cc/go/id v1.3.0 h1:Tr2Yj0Rl19lfwW5wBTJ407o/zgo2oVRLE20WWEgJzdE=
apigo.cc/go/id v1.3.0/go.mod h1:AFH3kMFwENfXNyijnAFWEhSF1o3y++UBPem1IUlrcxA= apigo.cc/go/id v1.3.0/go.mod h1:AFH3kMFwENfXNyijnAFWEhSF1o3y++UBPem1IUlrcxA=
apigo.cc/go/log v1.3.2 h1:/m3V4MnlYnCG4XPHpWDsa4cw5suMaDVY1SgaVyjnBSo= apigo.cc/go/log v1.3.2 h1:/m3V4MnlYnCG4XPHpWDsa4cw5suMaDVY1SgaVyjnBSo=

View File

@ -117,13 +117,23 @@ func (s *Scheduler) Stop(ctx context.Context) error {
} }
} }
func (s *Scheduler) Health() error { func (s *Scheduler) Status() (string, error) {
s.mu.RLock() s.mu.RLock()
defer s.mu.RUnlock() defer s.mu.RUnlock()
if !s.running { if !s.running {
return errors.New("scheduler is not running") return "stopped", errors.New("scheduler is not running")
} }
return nil return "running", nil
}
// Start 开始全局默认调度器
func Start(ctx context.Context, logger *log.Logger) error {
return DefaultScheduler.Start(ctx, logger)
}
// Stop 停止全局默认调度器
func Stop(ctx context.Context) error {
return DefaultScheduler.Stop(ctx)
} }
func (s *Scheduler) Run(name string) { func (s *Scheduler) Run(name string) {

10
task.go
View File

@ -28,6 +28,16 @@ type Config struct {
Timeout time.Duration `json:"timeout"` Timeout time.Duration `json:"timeout"`
} }
// WithPolicy 创建指定策略的配置
func WithPolicy(p Policy) Config {
return Config{Policy: p}
}
// WithTimeout 创建指定超时时间的配置
func WithTimeout(d time.Duration) Config {
return Config{Timeout: d}
}
// Task 代表一个被调度的任务 // Task 代表一个被调度的任务
type Task struct { type Task struct {
Name string `json:"name"` Name string `json:"name"`