Skip to content

Commit c0ce2f1

Browse files
committed
chore: update goVirtualHost
- refactor(service): use sync mode for non-blocking operations
1 parent 2736c09 commit c0ce2f1

File tree

1 file changed

+8
-31
lines changed

1 file changed

+8
-31
lines changed

src/goVirtualHost/service.go

Lines changed: 8 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -70,27 +70,11 @@ func (svc *Service) Add(info *HostInfo) (errs []error) {
7070
}
7171

7272
func (svc *Service) openListeners() (errs []error) {
73-
chListenErr := make(chan error)
74-
75-
go func() {
76-
wg := sync.WaitGroup{}
77-
for _, listener := range svc.listeners {
78-
wg.Add(1)
79-
l := listener
80-
go func() {
81-
err := l.open()
82-
if err != nil {
83-
chListenErr <- err
84-
}
85-
wg.Done()
86-
}()
73+
for _, listener := range svc.listeners {
74+
err := listener.open()
75+
if err != nil {
76+
errs = append(errs, err)
8777
}
88-
wg.Wait()
89-
close(chListenErr)
90-
}()
91-
92-
for err := range chListenErr {
93-
errs = append(errs, err)
9478
}
9579

9680
return
@@ -159,17 +143,10 @@ func (svc *Service) Close() {
159143
svc.state = stateClosed
160144
svc.mu.Unlock()
161145

162-
wg := sync.WaitGroup{}
163146
for _, listener := range svc.listeners {
164-
wg.Add(1)
165-
l := listener
166-
go func() {
167-
if l.server != nil {
168-
l.server.close()
169-
}
170-
l.close()
171-
wg.Done()
172-
}()
147+
if listener.server != nil {
148+
listener.server.close()
149+
}
150+
listener.close()
173151
}
174-
wg.Wait()
175152
}

0 commit comments

Comments
 (0)