返回 DeepSeek-Reasonix
session_service_shutdown.go
根目录 / desktop / session_service_shutdown.go
1 package main
2
3 import (
4 "context"
5 "log/slog"
6
7 "reasonix/internal/session"
8 )
9
10 // Run after controllers and lifecycle barriers release their bindings.
11 func (a *App) closeSessionServices() {
12 a.sessionServicesMu.Lock()
13 services := make([]*session.Service, 0, len(a.sessionServices))
14 for _, service := range a.sessionServices {
15 services = append(services, service)
16 }
17 a.sessionServicesMu.Unlock()
18 for _, service := range services {
19 if err := service.Shutdown(context.Background()); err != nil {
20 slog.Warn("desktop: close session service", "err", err)
21 }
22 }
23 }
24
24 lines GO