feat 模块增加after start

This commit is contained in:
2026-01-20 12:11:26 +08:00
parent 5aeff7c786
commit c0f6cd90c6
11 changed files with 43 additions and 38 deletions

View File

@@ -14,6 +14,7 @@ import (
// ModuleWebServer Web服务模块
type ModuleWebServer struct {
module.DefaultModule
wg *sync.WaitGroup
server *http.Server
}
@@ -23,7 +24,7 @@ func (m *ModuleWebServer) Init() error {
return nil
}
func (m *ModuleWebServer) Start() error {
func (m *ModuleWebServer) Start(ready *sync.WaitGroup) error {
m.wg.Add(1)
go func() {
defer m.wg.Done()
@@ -31,6 +32,7 @@ func (m *ModuleWebServer) Start() error {
Addr: fmt.Sprintf("%v:%v", config.Get().Serve.Http.Address, config.Get().Serve.Http.Port),
Handler: http_gateway.InitRouter(),
}
ready.Done()
if err := m.server.ListenAndServe(); err != nil && !errors.Is(err, http.ErrServerClosed) {
log.Errorf("http server failed: %v", err.Error())
}
@@ -46,7 +48,3 @@ func (m *ModuleWebServer) Stop() error {
m.wg.Wait()
return nil
}
func (m *ModuleWebServer) Bind(_ ...any) module.Module {
return m
}